“取消”按钮背后的基本思想是通过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