Vixen
dd8b0a81
csharp
public enum AccessibleStates

The conditions a screen reader announces alongside a role and a name.

Read the guide page for this →

Remarks

Named after .NET's own System.Windows.Forms.AccessibleStates and populated from ARIA's state attributes — aria-checked, aria-expanded, aria-selected, aria-readonly, aria-required, aria-invalid, aria-busy, aria-modal, aria-multiselectable, aria-multiline, aria-pressed. The four with no ARIA attribute behind them — Focused, Focusable, Editable and Expandable — are AT-SPI2 state names, because ARIA expresses those three by omitting an attribute and an in-process tree has to be able to say them.

⚠ Expandable is separate from Expanded because aria-expanded has three values and a flag has two. Absent means "this does not expand"; false means "it does and it is closed". Folding them would make every button in the document report itself as a collapsed disclosure.

⚠ Checked and Pressed are not the same state and the difference is not cosmetic. A checkbox is aria-checked; a toggle button in a toolbar is aria-pressed, and a screen reader says "pressed"/"not pressed" for one and "ticked"/"unticked" for the other. Both are Checked in the cascade, which is why the accessible state is computed by the control rather than read off the style flags.

Fields and properties (18)

  • None

    Nothing.

  • Disabled

    It refuses input. ARIA aria-disabled.

  • Focused

    The keyboard focus is on it. AT-SPI FOCUSED.

  • Focusable

    The keyboard focus could be on it. AT-SPI FOCUSABLE.

  • Checked

    A checkbox, radio or switch that is on. ARIA aria-checked="true".

  • Mixed

    A checkbox whose parts disagree. ARIA aria-checked="mixed".

  • Pressed

    A toggle button that is in. ARIA aria-pressed="true".

  • Selected

    A tab, option or row that is the chosen one. ARIA aria-selected="true".

  • Expandable

    It has an aria-expanded at all — a disclosure, a combo box, a tree item.

  • Expanded

    And it is open. ARIA aria-expanded="true". Meaningless without Expandable.

  • Editable

    Text can be typed into it. AT-SPI EDITABLE.

  • ReadOnly

    Its value can be read and copied but not changed. ARIA aria-readonly.

  • Required

    A value must be supplied. ARIA aria-required.

  • Invalid

    The value it holds is not acceptable. ARIA aria-invalid.

  • Busy

    It is being filled in and should not be announced yet. ARIA aria-busy.

  • Modal

    Nothing outside it can be reached while it is up. ARIA aria-modal.

  • MultiSelectable

    More than one of its children can be chosen at once. ARIA aria-multiselectable.

  • MultiLine

    Its value may contain newlines. ARIA aria-multiline.

Used by (38)

  • AccessibilityNodeVixen.Ui
  • AccessibilitySnapshotVixen.Ui.Testing
  • AccessibilityTestsVixen.Ui.Tests
  • AccessibilityTreeTestsVixen.Ui.Controls.Tests
  • AccessibilityTreeTestsVixen.Ui.Controls.Advanced.Tests
  • AccessibilityTreeTestsVixen.Ui.Tests
  • AccessibleNodeVixen.Ui
  • CheckBoxVixen.Ui.Controls
  • CodeEditorVixen.Ui.Controls.Advanced
  • ColorInputVixen.Ui.Controls.Advanced
  • ColorPickerKeyboardTestsVixen.Ui.Controls.Advanced.Tests
  • ColorSwatchVixen.Ui.Controls.Advanced
  • ComboEditorVixen.Ui.Controls
  • DataGridVixen.Ui.Controls.Advanced
  • DataRowVixen.Ui.Controls.Advanced
  • DialogVixen.Ui.Controls
  • DockTabVixen.Ui.Controls.Advanced
  • ExpanderHeaderVixen.Ui.Controls
  • FieldValidationTestsVixen.Ui.Controls.Tests
  • MenuBarItemVixen.Ui.Controls
  • MenuItemVixen.Ui.Controls
  • MultiSelectVixen.Ui.Controls
  • NodeCanvasVixen.Ui.Controls.Advanced
  • NodeCanvasKeyboardTestsVixen.Ui.Controls.Advanced.Tests
  • NodeItemVixen.Ui.Controls.Advanced
  • OptionVixen.Ui.Controls
  • ProgressBarVixen.Ui.Controls
  • RadioGroupVixen.Ui.Controls
  • SelectVixen.Ui.Controls
  • SpinnerVixen.Ui.Controls
  • StateProbeVixen.Ui.Controls.Tests
  • TabItemVixen.Ui.Controls
  • TextFieldVixen.Ui.Controls
  • ToggleBaseVixen.Ui.Controls
  • ToggleButtonVixen.Ui.Controls
  • TreeRowVixen.Ui.Controls.Advanced
  • TreeViewVixen.Ui.Controls.Advanced
  • UiElementVixen.Ui