How to display message box without any buttons in C#

前端 未结 4 1385
死守一世寂寞
死守一世寂寞 2021-01-13 08:15

I try to show a MESSAGE to the user while an operation is executed. The MESSAGE won\'t show any button. Just a MESSAGE (text) and maybe a background image.

The probl

相关标签:
4条回答
  • 2021-01-13 08:28

    Create a simple form with the message (or expose a public property to be able to change the message, or a constructor with message parameter to pass it in) and show the form using this Show overload. Then disable the (entire) original (owner) form (or just disable the controls you don't want accesible).

    So, in your "main" form do this:

    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
    

    Also, consider using a BackgroundWorker.

    0 讨论(0)
  • 2021-01-13 08:42

    create custom form, and write own behavior

    0 讨论(0)
  • 2021-01-13 08:45

    One way you could do it is create a worker class that raises an event when it is finished.

    execute the worker class in a new thead so it runs it the backgroud.

    create the modal form with a method to close it as the event handler for the "finished" event. This way the ui still works and responds and the form will close once the worker thread is finished.

    0 讨论(0)
  • 2021-01-13 08:49

    Create a custom form set it to minimal styles etc. Make sure it knows when the process is complete, say by passing in a reference to the process and checking it every now and then.

    0 讨论(0)
提交回复
热议问题