【发布时间】:2013-02-26 03:44:45
【问题描述】:
我有一个表单,当用户单击 Close (X) 按钮时,我禁止用户关闭它。是否可以在单击 Close (X) 按钮时显示工具提示?我想这样做是为了通知用户为什么表单不会关闭。
我想到了一个消息框,但我觉得每次点击关闭(X)按钮时都关闭消息框太烦人了。
有没有比我尝试做的更好的方法来通知用户?
编辑:
这是我的 FormClosing 事件代码
private void InputForm_FormClosing(object sender, FormClosingEventArgs e)
{
if (e.CloseReason == CloseReason.UserClosing)
{
e.Cancel = true;
if (!mCloseReason)
{
e.Cancel = false;
}
}
}
我有一种方法可以将输入保存在表单中。一旦该方法完成,我需要自动关闭表单。一旦我调用 this.Close(),if 语句 将为 true,这意味着我无法关闭表单。这就是为什么我使用了一个名为 mCloseReason 的变量来自动关闭表单。现在,这就是为什么我问我是否可以在单击 Close (X) 按钮后通过工具提示通知用户。
【问题讨论】:
-
我不确定是什么情况,但最好显示关闭按钮的禁用状态吗?工具提示有点不寻常。
-
没有。我正在使用 DevExpress 在表单上应用皮肤,并且不显示关闭按钮的代码 sn-p 不适用于 DevExpress。
-
我认为允许用户随时点击取消按钮来关闭表单是标准行为。否则,如果他们点击 OK 或 Apply 按钮,但在其他控件上的输入不正确,那将是显示错误消息的好时机。这是一篇关于 UI 设计的精彩文章:joelonsoftware.com/uibook/fog0000000249.html.