Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#消息框位于顶部,直到操作完成_C#_.net_Winforms_Messagebox - Fatal编程技术网

C#消息框位于顶部,直到操作完成

C#消息框位于顶部,直到操作完成,c#,.net,winforms,messagebox,C#,.net,Winforms,Messagebox,如何打开MessageBox,将其保持打开状态直到任务完成,然后关闭它 我计划在里面插入一个加载动画 我需要以某种方式使你不能通过点击它来关闭它,只是通过代码 var t = Task.Run(() => { MessageBox.Show("Loading!"); CycleValue = 0; while (CycleValue < noOfCycles && buttonStartStop.Text == "Stop") {

如何打开MessageBox,将其保持打开状态直到任务完成,然后关闭它

我计划在里面插入一个加载动画

我需要以某种方式使你不能通过点击它来关闭它,只是通过代码

var t = Task.Run(() =>
{
    MessageBox.Show("Loading!");

    CycleValue = 0;
    while (CycleValue < noOfCycles && buttonStartStop.Text == "Stop")
    {
        this.Invoke((MethodInvoker)delegate
        {
            gm.NextState();
            CycleValue++;
            if (CycleValue == noOfCycles)
            {
                buttonStartStop.Text = "Start";
                buttonRandomise.Enabled = true;
                buttonReset.Enabled = true;
            }
        });
    }
});
var t=Task.Run(()=>
{
MessageBox.Show(“加载!”);
CycleValue=0;
while(CycleValue
如果要在UI上执行操作时显示忙碌光标,可以使用-

 Cursor.Current = Cursors.WaitCursor;

如果要显示动画,请参考

如果要在UI上执行操作时显示忙碌的光标,可以使用-

 Cursor.Current = Cursors.WaitCursor;

如果要显示动画,请参考

,您需要创建自己的表单/窗口,该表单/窗口模仿消息框的外观,但您可以对其进行更多控制(例如在任务完成后执行关闭事件)。一个标签和几个按钮不会花费太长时间,在未来的项目中会很有用

您需要创建自己的表单/窗口,该表单/窗口模仿消息框的外观,但您有更多的控制权(例如在任务完成后执行关闭事件)。一个标签和几个按钮不会花费太长时间,在未来的项目中会很有用

到目前为止,您尝试了哪些代码?您描述的是一个模式对话框或消息框(如果有帮助的话)。WinForms中的消息框将无法执行您想要的操作。您需要打开一个新的框架或模式对话框。除非目标是阻止对UI其余部分的访问,否则模式似乎是错误的。要阻止用户关闭,您需要截获关闭、退出、取消消息并丢弃它们,并让worker任务在完成后发送其他自定义消息。添加了部分代码。在while循环中,一些值将被更改并显示。在这种情况下,我需要打开并限制对主窗体的访问。到目前为止,您尝试了哪些代码?您描述的是一个模式对话框或消息框,如果有帮助的话。WinForms中的消息框将无法执行您想要的操作。您需要打开一个新的框架或模式对话框。除非目标是阻止对UI其余部分的访问,否则模式似乎是错误的。要阻止用户关闭,您需要截获关闭、退出、取消消息并丢弃它们,并让worker任务在完成后发送其他自定义消息。添加了部分代码。在while循环中,一些值将被更改并显示。当这种情况发生时,我需要打开并限制对主窗体的访问。@extra8您应该在这个自定义窗口中有您的工作代码,这样您就可以将该窗体显示为模态而不会出现问题。如果您需要对动画进行更多控制(如果您打算使用Gif或Png作为动画),请查看此.Net类:。@extra8您应该将工作代码放在这个自定义窗口中,这样您就可以将该窗体显示为模式,而不会出现问题。如果需要对动画进行更多控制(如果要使用Gif或Png作为动画),请查看此.Net类:。