gpt4 book ai didi

c# - Silverlight:如何强制屏幕阅读器阅读内容?

转载 作者:行者123 更新时间:2023-11-30 13:05:03 29 4
gpt4 key购买 nike

Silverlight 在使自动化树易于访问方面做得很好,但是有没有办法以编程方式要求屏幕阅读器阅读某些内容?到目前为止,我一直在使用:

        AutomationPeer peer = FrameworkElementAutomationPeer.FromElement(element);
if (peer == null)
{
peer = FrameworkElementAutomationPeer.CreatePeerForElement(element);
}
if (peer != null)
{
peer.RaiseAutomationEvent(AutomationEvents.AutomationFocusChanged);
}

这在调试 Silverlight 运行时下工作正常(即如果我从 VS 内部启动 IE),但如果我在 Visual Studio 外部启动 IE 则不起作用(即使它指向相同的内部开发服务器......)。那么是否有另一种简单的方法可以让屏幕阅读器阅读内容?

编辑:它在 MS Narrator 中也能正常工作,但在 NVDA 中却不行……很奇怪。

最佳答案

我认为您实际上必须将焦点放在元素本身上。屏幕阅读器跟踪焦点,然后根据焦点读取值。如果您触发 AutomationFocusChanged 事件,那么它可能会检测到该事件,但会返回到它之前拥有的相同控件。

关于c# - Silverlight:如何强制屏幕阅读器阅读内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6380125/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com