我的Windows窗体应用程序中有一个浏览按钮,我想只过滤到选择pdf文件的选项。因此,在浏览文件窗口中,只有pdf文件可见,不显示.doc或任何类型的文档格式。
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 :(得分:7)
首先,您需要先将过滤器应用于OpenFileDialog
,例如:
dlg.Filter = "PDF Files|*.pdf";
然而,这并不能阻止他们强制通过文件(他们可以这样做)。您可以在单击确定后再次检查文件名,但这并不能保证您获得的文件将是PDF。
为了安全起见,您可以在本地或服务器端使用PDF库来尝试打开PDF文件,看看它是否真的如此。
答案 1 :(得分:2)
添加:
dlg.Filter = "PDF files|*.pdf";
答案 2 :(得分:2)
您需要在dlg
对象上设置过滤器属性,如下所示:
var dlg = new OpenFileDialog();
dlg.Filter = "*.pdf";
var res = dlg.ShowDialog();
if (res == DialogResult.OK)
{
DocumentUNCPath.Text = dlg.FileName;
}
答案 3 :(得分:1)
您想使用Filter
的OpenFileDialog
属性。
dlg.Filter = "PDF Files|*.pdf"
|
左边的部分可以是任何东西,我只是给你一个例子,但它是向用户显示的内容。 |
右侧的部分是实际的Windows过滤器。