无法在OpenFileDialog中过滤pdf和txt文件

时间:2019-02-26 04:21:10

标签: c# winforms filter windows-10 openfiledialog

我一直在使用此过滤器来过滤pdf和其他文件。

 ChooseDocumnetOfd.Filter = "Pdf files (*.pdf)|*.pdf |Office Files|*.doc;*.xls;*.ppt |Txt files (*.txt); *.txt | ";

它运行了很长时间了。但是,我现在只能过滤Word文件。 为什么现在不能过滤任何其他类型的文件?

2 个答案:

答案 0 :(得分:1)

这不是有效的过滤字符串;在输入Txt文件后,您丢失了管道符号,并且末尾有多余的管道。它应该看起来像这样:

ChooseDocumnetOfd.Filter = "Pdf files (*.pdf)|*.pdf|Office Files|*.doc;*.xls;*.ppt|Txt files (*.txt)|*.txt";

答案 1 :(得分:1)

我会写:

 ChooseDocumnetOfd.Filter = "Pdf files (*.pdf)|*.pdf|Office files (*doc, *.xls, *.ppt)|*.doc;*.xls;*.ppt|Text files (*.txt)|*.txt";

我不知道为什么它以前能工作;您所遇到的问题不符合文档(https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.filedialog.filter?view=netframework-4.7.2

中列出的规则

基本规则是:

description1|extensionlist1|description2|extensionlist2...

多个扩展名,以分号分隔。说明可以包含任何文本,而不必包含扩展名列表