Поделиться через


DataGridViewRowAccessibleObject.Name начальный индекс строки

DataGridViewRow.DataGridViewRowAccessibleObject подвергся изменениям, влияющим на Name свойство. Индекс строки в свойстве Name теперь начинается с 1 вместо 0 по умолчанию.

В результате этого изменения средства чтения с экрана объявляют выбранную строку DataGridView на основе начального индекса 1.

Представленные версии

.NET 9( предварительная версия 1)

Прежнее поведение

Name Ранее свойство основано на индексе строки на начальном индексе 0. Средства чтения с экрана объявили выбранную строку DataGridView на основе начального индекса 0.

Новое поведение

Начиная с .NET 9 индекс свойства Name начинается с 1. Средства чтения с экрана объявляют выбранную строку DataGridView на основе начального индекса 1.

Категория изменения

Это изменение поведения.

Причина изменения

Это изменение устраняет проблему специальных возможностей, выделенную в проблеме GitHub #7154. Проблема относится к подсчету строк в DataGridViewRow.DataGridViewRowAccessibleObject начале 0, что создает несоответствие с ожиданиями пользователей и средствами чтения с экрана.

Это изменение обеспечивает более интуитивно понятный и инклюзивный интерфейс для пользователей, использующих средства чтения с экрана и специальные возможности. При необходимости разработчики также обеспечивают гибкость в поддержании исходного поведения.

Если приложение использовало предыдущее поведение, и вы предпочитаете индекс строки начинаться с 0, можно задать новый параметр System.Windows.Forms.DataGridViewUIAStartRowCountAtZero. Чтобы сохранить исходную функциональность, создайте файл runtimeconfig.template.json в корневой папке проекта и задайте для этого параметра значение true. Обновите базу кода соответствующим образом, чтобы она соответствовала этому изменению и убедитесь, что DataGridViewRow.DataGridViewRowAccessibleObject индекс строки отображается с начальной точкой в 0.

Фрагмент файла runtimeconfig.template.json, который задает для параметра отменить изменения предыдущее поведение:

{
    "configProperties": {
      "System.Windows.Forms.DataGridViewUIAStartRowCountAtZero": true
    }
}

Затронутые API