2009-07-07 54 views
0

我正在开发一个包含WPF ElementHost的Microsoft Word TaskPane。托管的WPF使用了一个旨在表现为ComboBox的Popup。我相信你可以重现我的问题是这样的:点击TaskPane的Popup外界失去键盘焦点

popup.IsOpen = true; 
popup.StaysOpen = false; 
Mouse.Capture(ancestor_of_popup, CaptureMode.SubTree); 

在弹出的区域位于TaskPane的边界之外,点击鼠标在该地区。整个TaskPane失去键盘焦点到Word的主窗口,但保留鼠标捕获。此时,您可以在键盘上键入时使用鼠标使用弹出窗口来编辑您的文档!

如果TaskPane失去键盘焦点,那么Popup应该关闭,但是在位于TaskPane边界之外的Popup区域中的任何控件都将变得不可用。有任何想法吗?

+0

刚刚注意到http://stackoverflow.com/questions/619798/why-does-a-wpf-popup-close-when-its-background-area-is-clicked,检查是否解决了这个问题。 – 2009-07-07 23:03:53

回答