2013-01-11 93 views
0

我有一個列表視圖窗口瀏覽器通過那文件夾瀏覽器的工作完全沒問題。我打開文件夾,並在特定目錄中的文件和文件夾,通過使用如何在ListView控件

PopulateListView(path) 
在列表視圖中打開列表視圖打開資源管理器窗口

現在在我的鼠標雙擊事件即時通訊打開一個特定的文件和文件夾,它打開文件,但當它打開目錄時,彈出一個新窗口。我希望該目錄在列表視圖控制中打開...該場景的代碼a是

private void listView1_MouseDoubleClick(object sender, MouseEventArgs e) 
     { 
      string pathdoubleClicked = listView1.FocusedItem.Tag.ToString(); 
      PopulateListView(pathdoubleClicked); 

      Process.Start(pathdoubleClicked); 
      simpleStack.Push(pathdoubleClicked); 
     } 

否無線路由器想要這樣做,如果還有其他喜歡如果路徑是drectory然後去populatelistview方法其他明智process.start但它現在工作任何想法我怎麼能做到這一點

回答

1

從我的理解,如果路徑是目錄中,您想要雙擊顯示其內容。如果它是一個文件,你想打開它。

所以,你會簡單地做:

private void listView1_MouseDoubleClick(object sender, MouseEventArgs e) 
{ 
    string pathdoubleClicked = listView1.FocusedItem.Tag.ToString(); 

    if (System.IO.Directory.Exists(pathdoubleClicked)) 
    { 
     PopulateListView(pathdoubleClicked); 
    } 
    else 
    { 
     Process.Start(pathdoubleClicked); 
    } 

    // ? 
    simpleStack.Push(pathdoubleClicked); 
} 
+0

是完全相同.......我做的一樣,如果(pathdoubleClicked == directory.getdirectories(folderbrowser.getPath)的ToString()),那麼這樣做..嚴重的這個聲明顯示了調試目錄的路徑:P,但現在它的工作我可憐的編碼啊......無論如何 – engineer41