打开文件对话框,多个Excel扩展的一个过滤器?

net*_*cat 58 c# openfiledialog winforms

我想使用OpenFileDialog对象浏览到excel文件.我想设置过滤器打开具有不同类型的excel扩展名的文件,如:.xls,.xlsm,.xlsx等.

我正在使用的是:

OpenFileDialog of = new OpenFileDialog();
of.Filter = "Excel Files(.xls)|*.xls| 
    Excel Files(.xlsx)|*.xlsx| Excel Files(*.xlsm)|*.xlsm";
Run Code Online (Sandbox Code Playgroud)

这有效,但用户必须从OpenFileDialog的下拉列表中选择正确的excel文件类型.

有谁知道是否有办法为所有类型的Excel扩展应用一个过滤器?

类似于:"... Excel文件(.xls,.xlsx,.xlxm)|*.xls,*.xlsx,*.xlsm;"

提前感谢您的回复.

Ody*_*dys 123

使用分号

OpenFileDialog of = new OpenFileDialog();
of.Filter = "Excel Files|*.xls;*.xlsx;*.xlsm";
Run Code Online (Sandbox Code Playgroud)

  • ```Excel Files |*.xlsx;*.xlsm;*.xlsb;*.xltx;*.xltm;*.xls;*.xlt;*.xls;*.xml;*.xml;*.xlam;*.xla;*.xlw;*.xlr;```扩展来自:https://support.office.com/en-us/article/File-formats-that-are-supported-in-Excel-0943ff2c- 6014-4e8d,阿拉伯原子能机构,b83d51d46247 (2认同)

Ben*_*ert 9

如果您想合并过滤器(例如 CSV 和 Excel 文件),请使用以下公式:

OpenFileDialog of = new OpenFileDialog();
of.Filter = "CSV files (*.csv)|*.csv|Excel Files|*.xls;*.xlsx";
Run Code Online (Sandbox Code Playgroud)

或者,如果您想一次性查看 XML 或 PDF 文件,请使用以下命令:

of.Filter = @" XML or PDF |*.xml;*.pdf";
Run Code Online (Sandbox Code Playgroud)