【发布时间】:2010-07-26 19:08:02
【问题描述】:
我有一个 Windows 窗体应用程序,它同时运行两个线程,UI 线程在任务栏中运行。 UI 线程实际上执行与其他进程完全分离的功能,但是在新用户登录应用程序的情况下,我需要从非 UI 线程中弹出一个设置窗口。
这是我的 Program.cs 中的代码:
static void Main()
{
ThreadStart start = new ThreadStart(Waiting.wait);
Thread waiting = new Thread(start);
waiting.Start();
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(true);
Application.Run(TaskBarIcon.getInstance());
}
目前,TaskBarIcon 可以完全实例化之前,必须在等待线程中完成一个配置方法。这是通过来回传递锁来实现的。 我希望在处理配置方法时弹出此设置菜单,并让该方法等待完成,直到设置菜单完成运行。但是,除非我直接从 Application.Run() 方法运行设置菜单,否则我什至无法正确显示菜单。
我对 C# 很陌生....在 Java 中可以快速做到这一点,但 C# 的处理方式似乎不同。
任何建议或解决方案将不胜感激!
坏熊猫
【问题讨论】:
-
但 C# 的做法似乎有所不同 >> 没错,虽然方式相似,但如果你开另一条路,很容易迷路。
标签: c# multithreading user-interface installation locking