MSDN建议您使用OpenFileDialog类来允许用户选择一个或多个文件,如果您的程序需要此功能。程序员可以选择在该对话框中添加一个或多个过滤器,以便只显示扩展名与所选过滤器匹配的文件。这可以通过设置OpenFileDialog.Filter属性来完成。OpenFileDialog.Filter的类型是一个字符串?为什么?
要做到这一点,但是,你必须创建一个包含信息的过滤器的需求,这样的正确格式的字符串:
dlg.Filter = "Supported Sound Files (*.flac, *.mp3)|*.flac;*.mp3|Flac files (*.flac)|*.flac|MP3 files (*.mp3)|*.mp3";
会陆续添加更多不同的过滤器,这很快就变得相当混乱。
我的问题是,为什么这个属性必须遵循特定格式的字符串?这有什么好处,例如,与使用字典< string,string [] >相反,其中第一个字符串是过滤器的名称,第二个名称是此过滤器支持的文件扩展名的数组,或者类似的东西。
因为这是它在Windows 18年前所做的那样。不要认为典型的用户不会提供关于音频文件格式的声音,甚至不会看到它们。 –