![](/img/trans.png)
[英]My Music Player showing multiple instances of the same form, for each track
[英]Showing Multiple Instances Of Same Form?
我正在使用的WinForm应用程序存在一些严重问题。
当前,我正在使用Form1.ShowDialog();。 显示表格。 此代码包含在后台工作程序中,该工作程序查找数据库中的更改。 使用Form1.ShowDialog(); 即使数据库有多个更改,一次也只允许打开一个表单。 我想发生的事情是,如果数据库中有多个更改,一次可以打开多个表单。
当我使用Form1.Show();时,应用程序崩溃了。 由于某种原因,Show()方法使表单无法正确显示(表单中的所有元素均丢失)。
我可以做些什么使我的代码按我想要的方式工作吗?
编辑:这是一个代码片段
//result is a linq result
foreach (var row in result)
{
Form1 Form = new Form1();
Form.ShowDialog();
}
初步查看后,我可以告诉您:
从我的头顶来看两点:
1)要打开一个以上的表单,请使用非模态(无模)方法(我认为是show()方法)。 参见例如http://msdn.microsoft.com/en-us/library/39wcs2dh.aspx
2)我不确定您可以从非UI线程调用与UI相关的方法。 您可能要从辅助线程向UI线程发送事件,并且UI线程将调用show方法
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.