Skip to content

CheckBoxs do not read their state to screen readers properly on change #14669

Description

@trypsynth

.NET version

10.0.202

Did it work in .NET Framework?

Not tested/verified

Did it work in any of the earlier releases of .NET Core or .NET 5+?

No response

Issue description

This super simple test app:

using System.Windows.Forms;

ApplicationConfiguration.Initialize();
Form form = new() { Text = "Tiny App", Width = 200, Height = 100 };
CheckBox checkBox = new() { Text = "Check me!", Top = 20, Left = 20, AutoSize = true };
form.Controls.Add(checkBox);
Application.Run(form);

shows a problem with how Windows Forms handles its accessibility implementation for checkboxes.

  1. With NVDA, both 64-bit 2026.1 and 32-bit 2025.x, pressing space to toggle the state of this checkbox is utterly silent, instead of saying "checked" or "unchecked".
  2. With Narrator, it does read, but it rereads the entire label of the checkbox and then the state, which isn't normal. Went into an app using standard win32 controls and narrator announced "space, <state>" when I toggle checkboxes. In this app, it doesn't even say "space", just the label and the full state every time it's toggled.

Both of these are abnormal behaviors for screen readers, which points to it being something inside Winforms.

Steps to reproduce

  1. Run my provided test app with a screen reader active.
  2. Attempt to toggle the checkbox with the space bar.

Metadata

Metadata

Assignees

Labels

tenet-accessibilityMAS violation, UIA issue; problems with accessibility standards

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions