C#使用FolderBrowserDialog類實(shí)現(xiàn)選擇打開文件夾方法詳解
1.在C#中使用FolderBrowserDialog類,就可以實(shí)現(xiàn)選擇文件夾的功能,并將所選擇的的文件夾路徑記錄下來。
(1).首先先引入命名空間System.Windows.Forms;
(2).然后在應(yīng)用程序的主入口點(diǎn),也就是static void Main()方法上面加上[STAThread]屬性;
/// <summary>
/// 應(yīng)用程序的主入口點(diǎn)。
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
(3).然后定義我們的事件觸發(fā);
private void button1_Click(object sender, EventArgs e)
{
FolderBrowserDialog dilog = new FolderBrowserDialog();
dilog.Description = "請(qǐng)選擇文件夾";
if(dilog.ShowDialog() == DialogResult.OK || dilog.ShowDialog() == DialogResult.Yes)
{
path=dilog.SelectedPath;
}
}
(4).打開剛才我們所選擇的文件夾;
private void button2_Click(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(path))
{
System.Diagnostics.Process.Start("Explorer.exe", path);
}
else
{
MessageBox.Show("請(qǐng)選擇路徑");
}
}
以上就完成了,選擇文件夾的功能。
2.需要注意的是在程序的入口點(diǎn)出,需要添加[STAThread]屬性,當(dāng)然也可以不添加這個(gè)屬性,但是需要開啟另外一個(gè)線程來處理。代碼如下所示:
private void button1_Click(object sender, EventArgs e)
{
Thread newThread = new Thread(new ThreadStart(TEST));
newThread.SetApartmentState(ApartmentState.STA);
newThread.Start();
//或
//Thread app = new Thread(new ParameterizedThreadStart(TEST));//兩個(gè)TEST方法不一樣,委托類型不一樣
//app.ApartmentState = ApartmentState.STA;
//app.Start();
}
private void TEST(object obj)
{
FolderBrowserDialog dilog = new FolderBrowserDialog();
dilog.Description = "請(qǐng)選擇文件夾";
if(dilog.ShowDialog() == DialogResult.OK)
{
path=dilog.SelectedPath;
}
}
private void TEST()
{
FolderBrowserDialog dilog = new FolderBrowserDialog();
dilog.Description = "請(qǐng)選擇文件夾";
if (dilog.ShowDialog() == DialogResult.OK)
{
path = dilog.SelectedPath;
}
}
相關(guān)文章
C#8.0 中開啟默認(rèn)接口實(shí)現(xiàn)方法
這篇文章主要介紹了C#8.0 中開啟默認(rèn)接口實(shí)現(xiàn)方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧的相關(guān)資料2019-05-05C#中TreeView實(shí)現(xiàn)適合兩級(jí)節(jié)點(diǎn)的選中節(jié)點(diǎn)方法
這篇文章主要介紹了C#中TreeView實(shí)現(xiàn)適合兩級(jí)節(jié)點(diǎn)的選中節(jié)點(diǎn)方法,實(shí)例分析了C#中TreeView節(jié)點(diǎn)操作的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-09-09C#基于QRCode實(shí)現(xiàn)動(dòng)態(tài)生成自定義二維碼圖片功能示例
這篇文章主要介紹了C#基于QRCode實(shí)現(xiàn)動(dòng)態(tài)生成自定義二維碼圖片功能,結(jié)合實(shí)例形式分析了C#使用QRCode動(dòng)態(tài)生成二維碼圖片相關(guān)操作技巧,需要的朋友可以參考下2019-02-02