如何在没有在C#中的任何按钮,显示消息框(How to display message box wi

2019-09-19 12:55发布

我尝试在执行的操作显示一条消息给用户。 该消息将不会显示任何按钮。 只是消息(文本),也许一个背景图像。

问题如下:

  • MessageBox中似乎并没有成为很好的控制(因为按钮,它阻止正在运行的进程)。
  • Form.ShowDialog(也)块的运行过程。 我不知道该怎么办。
  • 我想显示的信息,运行我的过程,当这个过程完成处理消息。

如何做到这一点C#

Answer 1:

创建一个简单的形式与消息(或公开公共属性能够更改消息,或消息参数的构造函数传递给它的),并使用形式展现这显示超载 。 然后,禁用(整个)原(所有者)的形式(或只是禁用你不想入店的控件)。

所以,在你的“主”的形式做到这一点:

Form f = new MessageForm();
f.Show(this);         //Make sure we're the owner
this.Enabled = false; //Disable ourselves
//Do processing here
this.Enabled = true;  //We're done, enable ourselves
f.Close();            //Dispose message form

此外,考虑使用BackgroundWorker的 。



Answer 2:

创建自定义表单,并写出自己的行为



Answer 3:

创建自定义的形式,它设置为最小的风格等。确保它知道何时该过程完成后,通过传递到过程中的参考和每一个现在,然后检查其说。



Answer 4:

你可以做到这一点的方法之一是创建一个提高它完成时事件的工人阶级。

在新THEAD执行工人阶级所以它运行它的研究背景。

创建一个方法模式窗体关闭它作为事件处理程序“已完成”的事件。 通过这种方式,用户界面仍然工作和响应,一旦工作者线程完成的形式将关闭。



文章来源: How to display message box without any buttons in C#