none
[STAThread()]为什么不被识别 RRS feed

  • 问题

  • 今天在学习只用代码生成WPF的方法。书上给出了一种启动程序的方法

    C#

    using System.Windows;
    using System.Windows.Controls;
    using System.Windows.Markup;
    public class Program : Application
        {
            [STAThread()]//这个语句不被编译器识别
            static void Main()
            {
                Program app = new Program();
                app.MainWindow = new Window1();//Window1是已经设计好的类
                app.MainWindow.ShowDialog();
            }
        }
    
    

     

    我把[STAThread()]删除掉后,程序抛出异常“调用线程必须为 STA,因为许多 UI 组件都需要。”

    请问这是怎么回事,该如何解决?


    2012年2月2日 5:13

答案

全部回复