CommunityToolkit / WindowsCommunityToolkit

The Windows Community Toolkit is a collection of helpers, extensions, and custom controls. It simplifies and demonstrates common developer tasks building .NET apps with UWP and the Windows App SDK / WinUI 3 for Windows 10 and Windows 11. The toolkit is part of the .NET Foundation.
https://docs.microsoft.com/windows/communitytoolkit/
Other
5.9k stars 1.37k forks source link

Narrator is not accessing the readonly grid content #4978

Open gyz0072004 opened 8 months ago

gyz0072004 commented 8 months ago

Describe the bug

When setting a grid to read only and use narrator to access the grid, narrator could only focus on the whole data grid. It could not focus onto each cell. As a result, users with visual disability will not be able to know the grid content.

Regression

No response

Reproducible in sample app?

Steps to reproduce

<UserControl
    x:Class="DatagridWRC.IOGrid"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:DatagridWRC"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:winui="using:Microsoft.Toolkit.Uwp.UI.Controls"
    mc:Ignorable="d"
    d:DesignHeight="300"
    d:DesignWidth="400">

    <StackPanel Margin="8">
        <winui:DataGrid 
            Name="dataGrid" Height="Auto" Width="Auto" Margin="12"
            AutoGenerateColumns="False"
            IsReadOnly="True"
            GridLinesVisibility="All"
            CanUserSortColumns="True"
            ItemsSource="{x:Bind IOInfoViewModel.Items, Mode=OneWay}">
            <winui:DataGrid.Columns>
                <winui:DataGridTextColumn 
                    Header="Resource" 
                    Width="SizeToCells"
                    Binding="{Binding Resource}"
                    FontSize="14" />
                <winui:DataGridTextColumn 
                    Header="Device" 
                    Width="SizeToCells"
                    Binding="{Binding Device}"
                    FontSize="14" />
                <winui:DataGridTextColumn 
                    Header="Status" 
                    Width="SizeToHeader"
                    Binding="{Binding Status}"
                    FontSize="14" />
            </winui:DataGrid.Columns>
        </winui:DataGrid>
    </StackPanel>
</UserControl>

Expected behavior

Please use the built-in narrator with windows to see the behavior.

Expect the narrator focus could focus to the grid cells just like the tab focus.

Screenshots

image

The narrator focus is with blue border, and the tab focus is with black border. we can see that narrator could only focus to the whole table, while tab focuses to the grid cell.

Windows Build Number

Other Windows Build number

No response

App minimum and target SDK version

Other SDK version

No response

Visual Studio Version

2022

Visual Studio Build Number

17.9.3

Device form factor

Desktop

Nuget packages

Microsoft.Toolkit.Uwp.UI.Controls.Core 7.1.3 Microsoft.Toolkit.Uwp.UI.Controls.DataGrid 7.1.3 Microsoft.NETCore.UniversalWindowsPlatform 6.2.14

Additional context

The issue could also been seen with JAWS.

Help us help you

Yes, but only if others can assist.