【发布时间】:2012-09-08 05:57:40
【问题描述】:
我有一个 WPF 应用程序,它在加载时执行一个方法来检查某些文件是否存在,如果不存在,则下载它们。它还下载一个字符串用作消息,并输出到in-app 控制台。
但是,当我启动程序时,我看到白屏几秒钟,然后窗口加载,一切都完成了。所以看起来该方法是在窗口加载之前执行的。
如何等待窗口加载,等待大约 2 秒,然后运行该方法?
这是我尝试运行的方法的代码:
consolemessage("STARTUP", "Verifying existence of essential files...");
if(!File.Exists("Interop.NATUPNPLib.dll"))
Download("link here", "Interop.NATUPNPLib.dll");
if(!File.Exists("LICENSE.txt"))
Download("link here", "LICENSE.txt");
consolemessage("STARTUP", "Essential file validation completed!");
【问题讨论】:
-
建议不要使用硬编码的时间间隔进行多线程处理。在另一台机器上运行代码,它可能会中断。我会尝试在窗口的 Loaded 事件中调度加载,优先级为 Background。
标签: c# wpf multithreading