我正在创建一个 wpf 表单,它将用于添加/编辑数据网格中的数据。但是,当我检查 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;
}
最佳答案
每次调用 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
。
关于c# - WPF 窗口 ShowDialog() 导致无法设置可见性或调用 Show,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19070991/