[英]folderBrowserDialog does not work in c#
當我單擊按鈕以使用 c# 中的 folderBrowserDialog 選擇一個文件夾時,該對話框未顯示,並且對話框的結果自動設置為Cancel ..這是 Button_Click 背后的代碼:
private void glassButton1_Click(object sender, EventArgs e)
{
DialogResult result = folderBrowserDialog1.ShowDialog();//here Dialog is not shown and result=Cancel
if (result==DialogResult.OK)
{
folderBrowserDialog1.ShowNewFolderButton = true;
backupPath = folderBrowserDialog1.SelectedPath.ToString();
if (Directory.Exists(backupPath))
backupTextBox.Text = backupPath;
//else MessageBox.Show("path is invalid", "error", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);
}
}
我該如何解決? 謝謝 。
這是代碼,它對我來說很好用。
using (var dialog = new FolderBrowserDialog())
if (dialog.ShowDialog() == DialogResult.OK)
{
// some code...
}
您的代碼工作正常。 當您單擊 FolderBrowserDialog“確定按鈕”時,結果為DialogResult.OK 。 如果在結果值設置為 DialogResult.Cancel 時單擊“取消”或“關閉”按鈕
從項目屬性 -> 構建部分 -> 平台目標,我檢查了Prefer 32-bit checkBox 並解決了我的問題。
將 STAThread 屬性添加到 main 方法。
static class Program
{
[STAThread]
static void Main(string[] args)
{
...
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.