加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 当移除焦点WPF元素时,键盘焦点在哪里?

发布时间:2020-12-15 20:57:33 所属栏目:百科 来源:网络整理
导读:我在我的应用程序的面板中有一个类似于TreeView的自定义控件.当您点击项目时,他们会收到键盘焦点. 可以在树中选择一组项目,然后按Ctrl-X或删除剪切或删除它们.删除树项后,键盘焦点将恢复为主窗口. 这会导致麻烦 – 如果我撤消我的剪辑,我会恢复我的元素,但键
我在我的应用程序的面板中有一个类似于TreeView的自定义控件.当您点击项目时,他们会收到键盘焦点.

可以在树中选择一组项目,然后按Ctrl-X或删除剪切或删除它们.删除树项后,键盘焦点将恢复为主窗口.

这会导致麻烦 – 如果我撤消我的剪辑,我会恢复我的元素,但键盘焦点不再在我的面板上,所以我不能(例如)去剪切 – 撤消 – 剪切 – 撤消 – 剪切.

什么决定了元素移除后键盘焦点移动的位置?我很快就尝试让我的面板有IsFocusScope =“True”,但似乎没有任何效果,Focus Overview没有提到如何控制移除元素时焦点的位置.

解决方法

我猜你最好的选择可能是在撤消/重做之后手动设置焦点(可能在侦听FocusManager发送的事件的行为中封装它?)

另见Set focus on textbox in WPF

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读