删除用户控件上的焦点矩形
我有一个带有 Focusable="True" 的 WPF UserControl。 它是窗口中唯一可聚焦的控件。
每当用户按下 Tab 或 Alt(特别是当他们 Alt+Tab 到另一个应用程序时),我的 UserControl 都会获得一个虚线边框,也称为焦点矩形。 然后焦点矩形将停留在那里,直到窗口关闭。
如何防止我的 UserControl 显示此焦点矩形?
编辑
事实证明,我的用户控件实际上并未显示焦点矩形。 我的 Focusable UserControl 包含另一个 UserControl,而该 UserControl 又包含一个 ItemsControl,而 ItemsControl 则显示焦点矩形。
当我将 FocusVisualStyle="{x:Null}" 添加到 ItemsControl 时,焦点矩形消失了。
I have a WPF UserControl with Focusable="True". It's the only focusable control in the window.
Whenever the user presses Tab or Alt (and especially when they Alt+Tab to another application), my UserControl acquires a dotted-line border, aka focus rectangle. The focus rectangle then stays there until the window is closed.
How can I prevent my UserControl from ever displaying this focus rectangle?
Edit
It turns out the focus rectangle wasn't actually being displayed by my UserControl. My Focusable UserControl contained another UserControl that, in turn, contained an ItemsControl, and the ItemsControl is what was showing the focus rectangle.
When I added FocusVisualStyle="{x:Null}" to the ItemsControl, the focus rectangle went away.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果您不想在任何情况下显示焦点矩形,您可以将 FocusVisualStyle 设置为 null。
If you want to not display the focus rectangle in any case you could set the FocusVisualStyle to null.