C#OpenFileDialog中的错误,如果文件名中有两个句号

时间:2013-09-03 21:50:03

标签: c# filter openfiledialog

我有一个OpenFileDialog,过滤器设置为* .wav。但是,当我执行OpenFileDialog时,它还会显示包含 .wav的其他文件,但真正的扩展名不是.wav,例如PNG。为什么这样,我怎么能避免这个?

现在我在加载文件进行处理时会处理它,但我想避免首先将它们放在OpenFileDialog列表中。这是控件中的错误还是我?

背景:我偶然将图片文件重命名为TheFile.wav.png - 愚蠢,是的,但这些事情也会发生在其他用户身上。

提前致谢

1 个答案:

答案 0 :(得分:1)

尝试此操作在对话框中设置文件类型:

OpenFileDialog dialog = new OpenFileDialog();
dialog.Filter = "wav files (*.wav)|*.wav";
dialog.InitialDirectory = @"C:\";  // You may not need this.
if (dialog.ShowDialog() == DialogResult.OK)  // Or this; I was just being thorough.
{
   //  Your code can go here.
} 

只需确保在使用.Filter属性时,您遵循我上面的模式,否则它将无效。另外,如上所述,您可能希望在用户选择某些内容后进行一些验证。