microsoft / microsoft/microsoft-ui-xaml

TextBlocks are not read by screen readers when they are used in a XAML Islands app

Open
#10,869 1 comment 0 reactions 1 assignee View on GitHub

@snigdha011997 is already working on this.

Since Nov 6, 2025.

area-Islands bug team-Core team-Rendering
Dominant language
C++
Stars
8.4k
Forks
942
Avg merge
2d 7h
Merged PRs (30d)
105

Description

Describe the bug

TextBlocks are not read by Narrator and NVDA when they are used in a XAML Islands app.

Steps to reproduce the bug
Verified this behavior in the following places:

  • Windows Terminal Settings UI (NavigationView scenario)
  • Xaml Islands Sample App
    • "Win UI Navigation" is not read in the navigation view (even if a button is placed as the content next to the text block)
    • (when added) a text block above the "Hello from Xaml!" text box is not read

I have also tried adding a hyperlink to the text blocks, and the behavior slightly changed:

  | Narrator | NVDA -- | -- | -- Normal | Reads hyperlink, but not surrounding text. | Reads text block and hyperlinked portion. Xaml Islands | Silence. | Silence.

Additional context
Surprisingly, I've done a bit of testing with ContentDialogs too (see #2681). For NVDA, the text blocks are actually ready when the Content Dialog opens (except for the title). This further makes me think that the issue isn't that the automation properties aren't being exposed, but rather we need to notify the screen reader for when to read the text block.


Describe the bug

TextBlocks are not read by Narrator and NVDA when they are used in a XAML Islands app.

Steps to reproduce the bug
Verified this behavior in the following places:

Windows Terminal Settings UI (NavigationView scenario)
Xaml Islands Sample App
"Win UI Navigation" is not read in the navigation view (even if a button is placed as the content next to the text block)
(when added) a text block above the "Hello from Xaml!" text box is not read
I have also tried adding a hyperlink to the text blocks, and the behavior slightly changed:

Narrator NVDA
Normal Reads hyperlink, but not surrounding text. Reads text block and hyperlinked portion.
Xaml Islands Silence. Silence.
If you enter scan mode, you are able to navigate around the text (hyperlinked and not).

Expected behavior

At a minimum, XAML Islands should have the same behavior as a non-xaml islands app.

Ideally, for hyperlinks, all screen readers would behave like NVDA. That said, that might be an issue that's on screen readers, not XAML.

The real issue here is that these text blocks are not read automatically. It seems like they're being exposed, and we're just not notifying the screen reader that we've navigated to a portion of the screen that has a text block.

Version Info
NuGet package version:
[Microsoft.UI.Xaml 2.5.0]

Windows app type:

UWP Win32
Windows 10 version Saw the problem?
Insider Build (xxxxx)
October 2020 Update (19042)
May 2020 Update (19041)
November 2019 Update (18363)
May 2019 Update (18362)
October 2018 Update (17763)
April 2018 Update (17134)
Fall Creators Update (16299)
Creators Update (15063)
Device form factor Saw the problem?
Desktop
Xbox
Surface Hub
IoT
Additional context
Surprisingly, I've done a bit of testing with ContentDialogs too (see https://github.com/microsoft/microsoft-ui-xaml/issues/2681). For NVDA, the text blocks are actually ready when the Content Dialog opens (except for the title). This further makes me think that the issue isn't that the automation properties aren't being exposed, but rather we need to notify the screen reader for when to read the text block.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.