我正在创建一个wpf表单,用于从datagrid添加/编辑数据。但是,当我检查ShowDialog() == true
时,我收到了上述异常。
代码取自一本书(Windows Presentation Foundation 4.5 Cookbook)。
UserWindow usrw = new UserWindow();
usrw.ShowDialog();
if (usrw.ShowDialog() == true)
{
//do some stuff here;
}
在WPF窗口上:
private void btn_Save_Click(object sender, RoutedEventArgs e)
{
DialogResult = true;
Close();
}
我该如何处理?
===============================
解决问题的方法就是删除usrw.ShowDialog();它开始按预期工作
UserWindow usrw = new UserWindow();
//usrw.ShowDialog();
if (usrw.ShowDialog() == true)
{
//do some stuff here;
}
答案 0 :(得分:6)
每次拨打ShowDialog()
试
UserWindow usrw = new UserWindow();
bool result =(bool)usrw.ShowDialog();
if (result)
{
//do some stuff here;
}
或
UserWindow usrw = new UserWindow();
usrw.ShowDialog();
if ((bool)usrw.DialogResult)
{
//do some stuff here;
}
请记住,DialogResult
是Nullable。如果您在没有设置DialogResult的情况下关闭窗口,请检查null
。