我有一个问题似乎无法通过Google解决(可能是因为我没有找到正确的标准)。我有一个关闭事件,检查是否启用了一个按钮并弹出一个带有结果的消息框(是/否)。如果用户说“不”,我会在应用中获得所需的结果;但是,右上角的X停止工作。如何“恢复”关闭按钮(右上角的“X”),以便按下时再次工作(并再次评估逻辑)。
我试过这个:Stackoverflow Question
我认为我不想玩窗口的可见性。窗户不会去任何地方。他们有脏数据,他们需要修复它或自动保存。
我在申请表中的内容是:
private void DXWindow_Closing(object sender, CancelEventArgs e)
{
if (BtnPatSave.IsEnabled == false) return;
if (MessageBox.Show(Properties.Resources.PatAcctMsgBox3, Properties.Resources.PatAcctMsgBox1,
MessageBoxButton.YesNo,
MessageBoxImage.Warning) == MessageBoxResult.No)
{
e.Cancel = true;
}
else
{
var patId = TbPatId.Text;
var usl = new UnSetLockValue();
usl.UnSetVal(patId);
Log.Info("Patient Account is now unlocked by user: " + Environment.UserName);
}
}
答案 0 :(得分:1)
这是因为您正在使用MessageBox类。 它禁用“X”按钮以允许用户仅提供您指定的值。 如果您不想要这种行为,我认为您必须创建自己的“MessageBox”。