我正在开发一个工作应用程序,我需要一个自定义的消息框来显示。我创建了一个名为 Alert.cs 的简单表单,我按照我想要的方式设置了样式,并使用 this.Close() 的单击方法添加了一个按钮。现在我希望它的行为与标准的 messagebox.show() 完全一样。我显示了表单,但是当我使用标准 messagebox.show("text of alert") 时,它会等待继续操作,直到用户单击“确定”,这就是我希望表单执行的操作。
问问题
14306 次
4 回答
12
使用Form.ShowDialog();
. 这允许表单以与 a 相同的方式运行,MessageBox
因为它在关闭之前保持焦点。
于 2010-03-01T06:14:58.487 回答
6
如果您想要确切的类似 MessageBox 的行为,您将需要为您的 Alert 类实现一个静态方法。
public static DialogResult Show(string text)
{
Alert form = new Alert(text);
return form.ShowDialog();
}
现在您可以通过调用来使用该表单:
Alert.Show("my message");
于 2010-03-01T07:05:07.840 回答
3
您可以使用模态窗口窗体。就像是
Form frm = new Form();
frm.ShowDialog(this);
将窗体显示为模式对话框,当前活动窗口设置为其所有者。
于 2010-03-01T06:15:34.210 回答
0
您不写当前如何显示警报表单,而是调用
alert.ShowDialog();
而不是alert.Show()
应该做的伎俩。
带有所有者的 ShowDialog 是一个更好的选择:
alert.ShowDialog(owner);
于 2010-03-01T06:15:43.837 回答