如何在单独的线程中打开第二个UI

时间:2012-08-22 17:55:33

标签: c# multithreading

我正在与一个应用程序的团队合作,该应用程序具有报告生成器,然后是报告查看器。目前,我们无法在单独的线程中打开报表查看器。这两个应用程序一旦打开就应该是独立的,如果一个应用程序关闭它不应该影响另一个应用程序。

Report Viewer有一组UI文件,主UI有另一组。我的问题是,一旦主UI回到“空闲”状态(没有隐藏,只是没有处理任何东西),我们怎样才能在一个单独的线程中打开Viewer UI?

任何简短的代码片段都会有所帮助,此时我完全迷失了如何在新线程中打开查看器......

1 个答案:

答案 0 :(得分:0)

也许就是这样:

private void MethodName {
System.Threading.Thread t = new System.Threading.Thread(new System.Threading.ThreadStart(ThreadProc));
        t.Start();
}

ThreadProc代码如下所示:

public static void ThreadProc()
    {
        Application.Run(new Application_Name());            
    }

MethodName(对我而言)实际上是

serverToolStripMenuItem_Click(object sender, EventArgs e)

因为它是一个事件驱动的代码。

Application_Name将是您要运行的表单或应用程序。

希望这有帮助。