在我的ListBoxItem MouseEnter事件中,我正在使用以下代码创建一个新窗口。
Window w = new Window();
w.Show();
当鼠标离开当前项目时,我想关闭窗口。
我该怎么做?
非常感谢。
答案 0 :(得分:2)
存储对窗口(在您的案例中为w
)的引用,其中MouseEnter和MouseExit的事件处理程序都可以访问它,然后只需执行w.Close()
。
答案 1 :(得分:0)
不是将w存储在局部变量中,而是将其存储在当前类的成员变量中。在MouseExit上,使用成员变量关闭Window。
public partial class ListWindow
{
Window displayWindow;
public void OnListBoxItem_MouseEnter()
{
displayWindow = new Window();
displayWindow.Show();
}
public void OnListBoxItem_MouseExit()
{
displayWindow.Close();
}
}