ログインページを含むクラスライブラリ(ユニバーサルWindows)と、ログインページに移動するだけの空のアプリ(ユニバーサルWindows)の2つのプロジェクトを含むVisual Studio 2019ソリューションがあります。
私の要件の 1 つは、ソリューション全体がアクセシビリティ テストに合格する必要があるということです。このテストでは、ナレーター (ナレーターである必要があります) に画面上のすべてのテキストを読み上げてもらいます。
私の問題は、ページの読み込み時にナレーターがフォーカスのある TextBox のテキストのみを読み取ることです。私は、ナレーターが Image 要素と TextBlock 要素のテキストも読み上げることを期待していました。ページで使用している XAML の要約版を次に示します。
<Page>
<RelativePanel>
<Image
x:Name="Logo"
AutomationProperties.Name="Logo"/>
<TextBlock
x:Name="WelcomeTo"
x:Uid="WelcomeTo"
Text="Welcome to" />
<TextBlock
x:Name="ServiceName"
x:Uid="ServiceName"
Text="Service Name" />
<TextBox
x:Name="UserId"
x:Uid="UserId"
PlaceholderText="User ID"/>
<TextBox
x:Name="Password"
x:Uid="Password"
PlaceholderText="Password"/>
<Button
x:Name="SignIn"
x:Uid="SignIn"
Content="Sign In"/>
<TextBlock
x:Name="Footer"
x:Uid="Footer"
Text="Footer Text" />
</RelativePanel>
</Page>
健全性テストとして、2 つの TextBox 要素を削除して、フォーカスが問題であるかどうかを確認しました。その場合、ナレーターは画面からテキストを読み上げませんでした。また、いくつかの AutomationProperties フィールドを無効に変更しようとしました (つまり、AccessibilityView="Control"、LiveSetting="Assertive" など)。また、Inspect ツールを使用して、すべての TextBoxes が Control ビューに表示されることを確認しました。
何か不足していますか?
どんな助けや提案も大歓迎です。ありがとうございました!