【问题标题】:Open File Dialog, One Filter for Multiple Excel Extensions?打开文件对话框,多个 Excel 扩展的一个过滤器?
【发布时间】:2013-06-14 19:37:50
【问题描述】:

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

我使用的是这个:

OpenFileDialog of = new OpenFileDialog();
of.Filter = "Excel Files(.xls)|*.xls| 
    Excel Files(.xlsx)|*.xlsx| Excel Files(*.xlsm)|*.xlsm";

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

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

类似于:“...Excel 文件(.xls、.xlsx、.xlxm)|*.xls、*.xlsx、*.xlsm;”

提前感谢您的任何回复。

【问题讨论】:

  • MSDN 文档包含所有详细信息:msdn.microsoft.com/en-us/library/…
  • 感谢 David 和 odyodys。是的,页面上有示例,我确实阅读了该页面,但不知何故我错过了该部分。谢谢。

标签: c# winforms openfiledialog


【解决方案1】:

使用分号

OpenFileDialog of = new OpenFileDialog();
of.Filter = "Excel Files|*.xls;*.xlsx;*.xlsm";

【讨论】:

  • 太棒了!音频文件需要它dialog.Filter = "Audio Files|*.mp3;*.wav;*.wmp";
  • 谢谢!节省了我在网上搜索的时间
  • 对于两个过滤器——在我的例子中是 CSV 和 Excel 文件——我使用了:CSV files (*.csv)|*.csv|Excel Files|*.xls;*.xlsx;*.xlsm
  • Excel Files|*.xlsx;*.xlsm;*.xlsb;*.xltx;*.xltm;*.xls;*.xlt;*.xls;*.xml;*.xml;*.xlam;*.xla;*.xlw;*.xlr; 扩展来自:support.office.com/en-us/article/…
  • 您可以使用 * 来引用多个类型,例如:of.Filter = "Excel Files|*.xls*";
【解决方案2】:

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

OpenFileDialog of = new OpenFileDialog();
of.Filter = "CSV files (*.csv)|*.csv|Excel Files|*.xls;*.xlsx";

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

of.Filter = @" XML or PDF |*.xml;*.pdf";

【讨论】:

    猜你喜欢
    • 2014-04-10
    • 2015-12-28
    • 1970-01-01
    • 1970-01-01
    • 2019-09-12
    • 1970-01-01
    • 1970-01-01
    • 2014-05-04
    • 1970-01-01
    相关资源
    最近更新 更多