Application.Run(form);
实际上我试图从我的项目中调用它。我得到了这个例外。怎么解决?我已经在我的项目中调用了另一个Application.Run(frmBind);
。
在单个线程上启动第二个消息循环无效 操作。改为使用Form.ShowDialog。
static void Main(string[] args)
{
frmBind = new frmMain();
Application.Run(frmBind);
//args1 = string.Copy(args);
}
这是我最初调用应用程序的地方
现在再次在这里做到了:
try
{
// Application.Run( form);
form.ShowDialog();
}
抛出异常。
答案 0 :(得分:7)
它告诉你如何解决它:
form.Show();
或者如果您希望新表单是模态的:
form.ShowDialog();
答案 1 :(得分:4)
您只能在线程中调用Application.Run一次。 Application.Run将(除其他外)设置线程的主消息循环,并且只能有一个这样的循环。这就是你得到例外的原因。
如果您只想显示表单,请改用form.Show()
或form.ShowDialog()
。请注意,为已经可见的表单调用ShowDialog也会抛出InvalidOperationException(但是有另一条消息)。