c# – 在WPF中,是否保证在OnGotKeyboardFocus之后调用OnLostKeyb
发布时间:2020-12-15 21:50:37 所属栏目:百科 来源:网络整理
导读:我的代码看起来像这样: class MyUserControl : Control { ... protected override void OnGotKeyboardFocus(KeyboardFocusChangedEventArgs e) { base.OnGotKeyboardFocus(e); StartDoingSomethingRisky() } protected override void OnLostKeyboardFocus(K
我的代码看起来像这样:
class MyUserControl : Control { ... protected override void OnGotKeyboardFocus(KeyboardFocusChangedEventArgs e) { base.OnGotKeyboardFocus(e); StartDoingSomethingRisky() } protected override void OnLostKeyboardFocus(KeyboardFocusChangedEventArgs e) { base.OnLostKeyboardFocus(e); StopDoingSomethingRisky(); } 我是否应该担心,在某些情况下,即使在MyUserControl消失后,我仍可能继续进行危险的操作,或者我是否覆盖了100%的病例? 解决方法
我唯一能看到错误的是你没有检查哪个元素“丢失”了焦点.
从http://msdn.microsoft.com/en-us/library/system.windows.uielement.lostkeyboardfocus.aspx开始: 如果你在特定元素获得焦点时发生了某些事情,并且当它失去焦点时停止发生,那么你将需要检查传入的args以查看调用该事件的内容. 希望有所帮助 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |