[英]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.