「取消」按鈕背後的基本思想是通過Escape Keypress啓用關閉窗口。WPF Button.IsCancel屬性如何工作?
可以取消按鈕設置IsCancel屬性上 爲true,導致 取消按鈕自動關閉 對話框不處理點擊 事件。
來源:編程WPF(格里菲斯,銷售)
所以這應該工作
<Window>
<Button Name="btnCancel" IsCancel="True">_Close</Button>
</Window>
但是我希望的行爲不是爲我工作了。父窗口是Application.StartupUri屬性指定的主應用程序窗口。什麼工作是
<Button Name="btnCancel" IsCancel=True" Click="CloseWindow">_Close</Button>
private void CloseWindow(object sender, RoutedEventArgs)
{
this.Close();
}
- 是IsCancel不同的基於窗口是否是一個正常的窗口或對話框中的行爲嗎?只有在ShowDialog被調用後,IsCancel才能像廣告一樣工作嗎?
- 該按鈕是否需要一個明確的Click處理程序(IsCancel設置爲true)來關閉Escape按鈕上的窗口?
是的。附加屬性在我的腦海中仍然不會「點擊」。 – Gishu 2009-02-05 08:35:33
工程很好,唯一的是我必須替換鑄造到窗口,並添加一個檢查null爲空,如此處所示 - http://stackoverflow.com/questions/10206742/unable-to-cast-object-of-type -microsoft-expression-platform-wpf-instancebuilder,以避免錯誤「無法將類型爲」Microsoft.Expression.Platform.WPF.InstanceBuilders.WindowInstance「的對象轉換爲鍵入」System.Windows.Window「」(項目能夠構建成功,但錯誤很煩人,這是爲了我的VS 2012 + R#,並且在此之後,我必須重新啓動VS. – sarh 2015-02-12 22:21:39