相关疑难解决方法(0)

C#WinForms:如何设置主函数STAThreadAttribute

saveFileDialog.ShowDialog()在后台线程中调用时,我得到以下异常:

在进行OLE调用之前,必须将当前线程设置为单线程单元(STA)模式.确保您的Main函数标记了STAThreadAttribute.

根据这个:

要解决此问题,请插入以下语句:

Threading.Thread.CurrentThread.ApartmentState = Threading.ApartmentState.STA;
Run Code Online (Sandbox Code Playgroud)

在Application.Run语句之前的Main中.

但是Application.Run语句在Program.cs中,它似乎是生成的代码,因此任何更改都可能意外丢失.此外,我找不到在项目或主窗体属性中将当前线程设置为STA的方法,但也许我在错误的地方查找.saveFileDialog.ShowDialog()在后台线程中调用的正确方法是什么?

c# winforms

24
推荐指数
4
解决办法
5万
查看次数

C#OpenFileDialog非模态可能

是否可以创建/拥有非模态.net OpenFileDialog我在主对话框中有一个UI元素,总是需要用户按下.

c# modal-dialog openfiledialog

7
推荐指数
2
解决办法
4748
查看次数

标签 统计

c# ×2

modal-dialog ×1

openfiledialog ×1

winforms ×1