我是新來的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