我正在使用优秀的MUI库https://mui.codeplex.com/来创建我的WPF应用程序。
自定义窗口在MUI窗口中实现为用户控件。要打开窗口,请创建现代窗口的实例,将用户控件作为内容传递。到目前为止,这可以正常工作,但我遇到的问题是尝试从用户控件控制父窗口。
当我说“试图控制”时,我的意思是验证窗口的密切行为。
用户控件是我所有编辑数据等的地方,我想阻止父窗口关闭,如果用户正在编辑数据 - 即。 “关闭是的,没有取消”的事情。
我可以从用户控件成功关闭父窗口,但我看不到如何反向 - 即停止关闭窗口。
有人可以帮忙吗?
由于
答案 0 :(得分:4)
我对mui知之甚少,但我觉得这样的事情应该可以解决问题
public partial class UserControl1 : UserControl
{
public UserControl1()
{
InitializeComponent();
Loaded += UserControl1_Loaded;
}
void UserControl1_Loaded(object sender, RoutedEventArgs e)
{
var window = Window.GetWindow(this);
window.Closing += window_Closing;
}
void window_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
if (!Valid()) // You can show a message box or whatever logic you want
e.Cancel = true;
}
}