Ошибка C# Текущий поток должен быть установлен в однопотоковый режим (STA), прежде чем будут сделаны вызовы OLE

У меня есть простое решение с отображаемой формой. Я запускаю форму из Main следующим образом:

 static void Main()
    {

        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);
        Application.Run(new Form1());


    }

В форму, при нажатии на кнопку должен отображаться диалог открытия файла. Это сработало, но теперь я не понимаю, что изменилось, и у меня есть эта ошибка:

Текущий поток должен быть установлен в однопотоковый режим (STA), прежде чем можно будет выполнять вызовы OLE. Убедитесь, что на вашей главной функции помечен атрибут STAThreadAttribute. Это исключение возникает только в том случае, если к процессу подключен отладчик.

Вот

if (openFileDialog1.ShowDialog() == DialogResult.OK)

У меня в программе перед Main () строка [STAThread], но это не помогает.

Что мне нужно сделать? Благодарю.

0 ответов

Другие вопросы по тегам