Skip to content

Report selection changes for .NET Framework WinForms combo boxes using UIA#20481

Open
cary-rowen wants to merge 2 commits into
nvaccess:masterfrom
cary-rowen:dotNet4Fix
Open

Report selection changes for .NET Framework WinForms combo boxes using UIA#20481
cary-rowen wants to merge 2 commits into
nvaccess:masterfrom
cary-rowen:dotNet4Fix

Conversation

@cary-rowen

@cary-rowen cary-rowen commented Jul 11, 2026

Copy link
Copy Markdown
Contributor

Link to issue number:

Fixes #17454

Summary of the issue:

Classic .NET Framework Windows Forms combo boxes exposed through the native UIA provider update their value when the selection changes, but do not fire a UIA value change event. Therefore, NVDA does not report arrow-key selection changes while the combo box is collapsed.

Description of user facing changes:

NVDA now reports the selected item when using the arrow keys in affected collapsed combo boxes.

Description of developer facing changes:

No public API changes.

Description of development approach:

Add a private, targeted UIA overlay for affected combo boxes. It requests UIA_elementSelected events from same-process ComboLBox windows. Since this event request is scoped by process and window class, GetComboBoxInfo verifies that the event's list window belongs to the focused combo box before NVDA forwards it as a value change. The required User32 declarations are added to winBindings.user32.

Testing strategy:

  • Manual testing with the .NET Framework 4.8 demo using DropDown and DropDownList.
  • Unit tests for event subscription, valid event forwarding, rejection of events from another same-process combo box, and filtering other unrelated events.

Known issues with pull request:

None known.

Code Review Checklist:

  • Documentation:
    • Change log entry
    • User Documentation
    • Developer / Technical Documentation
    • Context sensitive help for GUI changes
  • Testing:
    • Unit tests
    • System (end to end) tests
    • Manual testing
  • UX of all users considered:
    • Speech
    • Braille
    • Low Vision
    • Different web browsers
    • Localization in other languages / culture than English
  • API is compatible with existing add-ons.
  • Security precautions taken.

@cary-rowen cary-rowen marked this pull request as ready for review July 11, 2026 13:42
@cary-rowen cary-rowen requested a review from a team as a code owner July 11, 2026 13:42
@cary-rowen cary-rowen requested a review from SaschaCowley July 11, 2026 13:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

NVDA: ComboBox Selected Item Not Announced in DropDownList Style in .NET Framework 4.8 WinForms Applications

1 participant