2013-02-13 160 views
-1

我在Windows窗體應用程序中有一個瀏覽按鈕,我只想過濾選擇PDF文件的選項。因此,在瀏覽文件窗口中,只有pdf文件可見,不會顯示.doc或任何類型的文檔格式。只允許上傳pdf文件

private void btnSelectFile_Click(object sender, EventArgs e) 
    { 
     var dlg = new OpenFileDialog(); 
     var res = dlg.ShowDialog(); 
     if (res == DialogResult.OK) 
     { 
      DocumentUNCPath.Text = dlg.FileName; 
     } 
    } 
+0

這是一個重複的問題。與解釋一起在這裏看到答案。 http://stackoverflow.com/questions/2069048/setting-the-filter-to-an-openfiledialog-to-allow-the-typical-image-formats – 2013-02-13 14:25:48

回答

7

首先,你需要先申請一個過濾器到爲OpenFileDialog例如:

dlg.Filter = "PDF Files|*.pdf"; 

然而,這並不從通過文件強制(他們可以做)阻止他們。您可以在點擊確定後再次檢查文件名,但這並不能保證您獲得的文件將是PDF。

爲了安全起見,您可以在本地或服務器端使用PDF庫來嘗試打開PDF文件,看看它是否確實如此。

1

您想使用OpenFileDialogFilter屬性。

dlg.Filter = "PDF Files|*.pdf" 

|左側的部分可以是任何東西,我只是給你一個例子,但它是什麼顯示給用戶。 |右側的部分是實際的Windows過濾器。

2

補充一點:

dlg.Filter = "PDF files|*.pdf"; 
2

你要設置過濾器屬性您dlg對象上是這樣的:

var dlg = new OpenFileDialog(); 
dlg.Filter = "*.pdf"; 
var res = dlg.ShowDialog(); 
if (res == DialogResult.OK) 
{ 
    DocumentUNCPath.Text = dlg.FileName; 
}