2015-08-15 70 views
0
string[] dirs = System.IO.Directory.GetDirectories(@"C:\Somefolder\"); 

foreach (string dir in dirs) 
{ 
    listBox1.Items.Add(Path.GetFileName(dir)); 
} 

這是我的代碼特定文本的項目,我不知道如何得到它包含在我的文本框,例如一些名存實亡的目錄。我已經看到有人有文本框,在它旁邊更新按鈕,我試圖以同樣的方式執行 - 你寫入到文件夾前的文本框名稱。 Windows和它只顯示一個文件夾,所以如果我寫Sys它會發現System32和SYSWOW64 & &它不會區分大小寫因爲我可以做簡單的條件,但不能使它不區分大小寫,你知道我的意思嗎?我的英語很糟糕,不得不這樣希望告訴它的理解只添加其中包含文本

回答

1

也許,你要想這

string[] dirs = System.IO.Directory.GetDirectories(@"C:\Somefolder\"); 
foreach (string dir in dirs.Where(x => x.Contains(textBox1.Text))) 
{ 
    listBox1.Items.Add(Path.GetFileName(dir)); 
} 

編輯

string[] dirs = System.IO.Directory.GetDirectories(@"C:\Somefolder\"); 
foreach (string dir in dirs.Where(x => x.ToLower().Contains(textBox1.Text.Trim().ToLower()))) 
{ 
    listBox1.Items.Add(Path.GetFileName(dir)); 
} 
+0

有沒有辦法做到這一點這種方式,但需要連不區分大小寫的字符?我的意思是如果有文件夾「Windows」,即使搜索「windows」,我想列出文件夾 –

+0

@yoloscope我編輯我的文章以忽略區分大小寫的搜索。 –

+0

感謝您的幫助 –