WPF 复合控件焦点设置

定义一个密码框的复合控件,最外层是 Border, 内部有三个控件分别是 Image, GridSplitter, PasswordBox.

当键盘输入完账号通过 tab 键跳转到密码框,会发现焦点不在 PasswordBox 上而是跑到了 GridSplitter 上,并有虚框。那为什么 Image 没有获取到焦点呢?

查询 MSDN 资料发现有一个依赖项属性 Focusable, 设置它为 true 代表此控件允许获取焦点,false 代表此控件不允许获取焦点。而 Image 控件默认是 false, 因此在 XMAL 文件中将 GridSplitter 的 Focusable 属性设置为 false 就好了。

你可能感兴趣的:(WPF 复合控件焦点设置)