2010-01-04 112 views
2

我有一個充滿文件路徑的列表框。有人知道如何在文件被雙擊時打開文件的默認程序嗎?例如,如果列表框中的某個項目顯示「c:\ test.txt」,那麼如何在記事本中打開它?如果它是「c:\ inetpub \ wwwroot \ sitetest \ test.asp」,它如何在默認的asp編輯器中打開?謝謝。雙擊打開文件c#

回答

2

您可以使用Process /類的ProcessStartInfo與Windows中的默認應用程序處理程序來執行該文件。

例如:

ProcessStartInfo psi = new ProccessStartInfo(); 
psi.FileName = "myfile.txt"; 
Process p = new Process(); 
p.StartInfo = psi; 
p.Start(); 

記住p.Start()可以拋出異常,你將不得不處理,以及不同版本的Windows會略有不同behavoir。我知道如果沒有默認的文件類型處理程序,Win7/Vista會彈出應用程序選擇器對話框,但在某些版本中,您只會遇到異常。

+0

謝謝!現在,在相關說明中,我如何通過雙擊列表框來獲取所選項目?我認爲這將是listbox.SelectedValue,但是當我雙擊時返回null。再次感謝! – geoff 2010-01-04 20:38:33

+0

ListBox.SelectedItem – Will 2010-01-04 20:40:45

+0

謝謝!我認爲這將是selectedvalue.tostring()。 – geoff 2010-01-04 20:43:56