我是新来的WPF C#,我正在寻找一些方向。我有一个弹出错误的文本框,我希望用户能够单击窗体上的任何位置关闭此窗口。我并不确定要使用哪些搜索字词或从哪里开始。任何帮助或自作聪明评论,如“你听说过谷歌”赞赏:)形式关闭弹出窗口点击任何地方
like, 如果鼠标点击 hide();
感谢, rd42
我的最终解决方案:
private void Button_Click(object sender, RoutedEventArgs e)
{
this.Hide();
}
我是新来的WPF C#,我正在寻找一些方向。我有一个弹出错误的文本框,我希望用户能够单击窗体上的任何位置关闭此窗口。我并不确定要使用哪些搜索字词或从哪里开始。任何帮助或自作聪明评论,如“你听说过谷歌”赞赏:)形式关闭弹出窗口点击任何地方
like, 如果鼠标点击 hide();
感谢, rd42
我的最终解决方案:
private void Button_Click(object sender, RoutedEventArgs e)
{
this.Hide();
}
下面是一个使用Popup
窗口一个简单的解决方案之一。
<Popup Name="errMsg" StaysOpen="False">
<TextBox/>
</Popup>
从你的代码隐藏,只是这样做的时候,是时候显示弹出。
errMsg.IsOpen = true;
单击Popup外部的任何位置都会产生所需的效果。 如果您使用的是传统窗口,只需订阅它的LostFocus
或Deactivate
事件并在那里关闭它(假设它没有显示为对话框)。老实说,Popup是这种情况的最简单和最好的解决方案。
MouseUp事件应该是你正在寻找
有另一个论坛上发现:
使用Window.Deactivate
事件&事件里面执行,关闭窗口......就是这样...... :)
+ 1。是关于这个帖子的东西类似。比手动处理MouseUp事件要漂亮得多。 – Bubblewrap 2011-05-02 12:29:24