0

在我的 ListBoxItem MouseEnter 事件中,我正在使用以下代码创建一个新窗口。

Window w = new Window();
w.Show();

当鼠标离开当前项目时,我想关闭窗口。

我怎么做?

非常感谢。

4

2 回答 2

2

将对窗口的引用(w在您的情况下)存储在 MouseEnter 和 MouseExit 的事件处理程序都可以访问它的地方,然后只需执行w.Close().

于 2009-04-11T12:05:35.340 回答
0

与其将 w 存储在局部变量中,不如将其存储在当前类的成员变量中。在 MouseExit 上,使用成员变量关闭窗口。

public partial class ListWindow
{
    Window displayWindow;

    public void OnListBoxItem_MouseEnter()
    {
        displayWindow = new Window();
        displayWindow.Show();
    }

    public void OnListBoxItem_MouseExit()
    {
        displayWindow.Close();
    }
}
于 2009-04-11T13:20:50.917 回答