Skip to content

Screen readers announce row numbers three times instead of just one in some cases when navigating through a DataGridView #13571

Open
@trypsynth

Description

@trypsynth

.NET version

dotnet Version: 9.0.2

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

I have this super simple test app with a DataGridView. When arrowing around the DataGridView using my screen reader, NVDA, I hear something like this:

Row 2, Not sorted. data item (null) Row 2 row 2
Upon first press of the down arrow in this app.
This is not ideal for a multitude of reasons, I'd also quite like to get rid of the "Not sorted" announcement when my DataGridView isn't editable/sortable, but the largest ouch, and the one this issue is about, is the fact that it tells me I'm in row 2 three times. This should only be announced once, IMO right at the beginning is fine like it currently is, just remove the extra two at the end.

namespace GridTest;

public class Form1 : Form {
	public Form1() {
		Text = "Test";
		DataGridView gridView = new DataGridView {
			AllowUserToAddRows = false,
			AllowUserToDeleteRows = false,
			AllowUserToOrderColumns = false,
			AllowUserToResizeColumns = false,
			AllowUserToResizeRows = false,
			ShowCellToolTips = false,
			ColumnCount = 18,
			RowCount = 11,
			Dock = DockStyle.Fill,
			ReadOnly = true,
			StandardTab = true
		};
		Controls.Add(gridView);
	}
}
namespace GridTest;

static class Program
{
    /// <summary>
    ///  The main entry point for the application.
    /// </summary>
    [STAThread]
    static void Main()
    {
        // To customize application configuration such as set high DPI settings or default font,
        // see https://aka.ms/applicationconfiguration.
        ApplicationConfiguration.Initialize();
        Application.Run(new Form1());
    }    
}

Steps to reproduce

Run the provided test app with the NVDA screen reader active. Once it launches, press down arrow, and notice what NVDA reports.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions