跳过 WPF 中面板或网格中所有控件的 KeyboardNavigation

Posted

技术标签:

【中文标题】跳过 WPF 中面板或网格中所有控件的 KeyboardNavigation【英文标题】:Skip KeyboardNavigation for all Controls in a Panel or Grid in WPF 【发布时间】:2013-06-05 10:39:28 【问题描述】:

当控件的 IsTabStop 属性设置为 false 时,通常会跳过 KeyboardFocus。但是网格或其他面板没有这样的属性。我尝试了附加属性 KeybordNavigation.IsTabStop,但这也没有跳过孔网格的键盘焦点的影响。

当网格后代控件之一通常会重新获得焦点时,我想跳过网格中的所有控件。有人有这方面的经验可以提供解决方案吗?

【问题讨论】:

【参考方案1】:

你很亲密。在您的 Grid 上,您需要使用附加属性:

KeyboardNavigation.TabNavigation="None"

【讨论】:

根据需要工作,partialy :) 我们现在可以跳过网格!但是现在,当我将焦点设置到此网格内的某个控件时,它总是会跳出网格,但如果有人故意将焦点设置在网格中,我需要焦点留在网格中!

以上是关于跳过 WPF 中面板或网格中所有控件的 KeyboardNavigation的主要内容,如果未能解决你的问题,请参考以下文章

WPF - 如何在标签导航中跳过标签?

网格和stackpanel之间的WPF组合

在网格中自动排列 wpf 控件

网格中控件周围的 WPF 可单击区域

如何使wpf数据网格填充所有可用空间并使用窗口调整大小?

WPF学习第八章 Grid面板