С каких то недавних времен
private void button1_Click(object sender, EventArgs e)
{
FileDialog.ShowDialog();
}
Стал кидать исключения
Текущий поток должен быть задан как поток однопоточного контейнера (STA), чтобы вызовы OLE стали возможны.
Говорит поставить перед Main [STAThread], что у меня собственно и так есть.
Одну идентичную проблему решили делегатом и методом invoke
private delegate DialogResult ShowSaveFileDialogInvoker();
private void button1_Click(object sender, EventArgs e)
{
ShowSaveFileDialogInvoker invoker = new ShowSaveFileDialogInvoker(FileDialog.ShowDialog);
this.Invoke(invoker); // where this is a Form
}
Однако у меня это проблему не решает и вылазит то же самое исключение