我想完成我的靜態提示類能夠從任何地方調用它。但問題是無法使對話框顯示。我已經在使用[STAThread]
,這裏是我的代碼。C#OpenFileDialog線程啓動,但沒有顯示對話框
public static string ShowFileDialog()
{
string selectedPath = "";
var t = new Thread((ThreadStart)(() =>
{
FolderBrowserDialog fbd = new FolderBrowserDialog();
fbd.RootFolder = System.Environment.SpecialFolder.MyComputer;
fbd.ShowNewFolderButton = true;
if (fbd.ShowDialog() == DialogResult.OK)
{
selectedPath = fbd.SelectedPath;
}
}));
t.SetApartmentState(ApartmentState.STA);
t.Start();
t.Join();
return selectedPath;
}
public static class Prompt
是我的提示類。我打電話給public partial class Dashboard : Form
類
謝謝你的幫助。
當對話框不可見時,能否描述一下使用ShowFileDialog()的用例?它可能是它是可見的但不是重點? –
我只想在系統收到來自套接字的命令時詢問用戶文件的路徑。 –
你從哪裏調用ShowFileDialog()? – Akansha