Openfiledialog过滤器不使用';t通过在文件名文本框C#winform中键入完整文件路径来限制打开文件

Openfiledialog过滤器不使用';t通过在文件名文本框C#winform中键入完整文件路径来限制打开文件,c#,winforms,openfiledialog,C#,Winforms,Openfiledialog,我正在使用OpenFileDialog打开某些特定的文件类型,为此,我设置了OpenFileDialog的Filter属性。过滤器设置仅隐藏过滤器扩展名之外的文件,但用户仍可以通过在OpenFileDialog“文件名:”文本框中键入文件名来选择这些文件。 我希望用户不能选择超出筛选设置的文件,即使在openFileDialog box“file Names:”文本框中手动键入路径 这是代码 private void button7_Click(object sender, EventA

我正在使用
OpenFileDialog
打开某些特定的文件类型,为此,我设置了
OpenFileDialog
Filter
属性。过滤器设置仅隐藏过滤器扩展名之外的文件,但用户仍可以通过在
OpenFileDialog
“文件名:”文本框中键入文件名来选择这些文件。 我希望用户不能选择超出筛选设置的文件,即使在openFileDialog box“file Names:”文本框中手动键入路径

这是代码

    private void button7_Click(object sender, EventArgs e)
    {
        EncryptFile();
    }

    public void EncryptFile()
    {
        OpenFileDialog dialog = new OpenFileDialog();
        dialog.Filter = "Office Files|*.doc;*.xls;*.ppt";
        dialog.InitialDirectory = @"C:\";
        dialog.Title = "Please select an office file to encrypt.";
        string fileName = "";
        if (dialog.ShowDialog() == DialogResult.OK)
        {

            fileName = dialog.FileName; 
            /// doing something
        }
    }

功能,而不是bug。使用其FileOk事件拒绝您不喜欢的文件。@HansPassant,我不是说这是一个bug!相反,我在寻找OpenFileDialog中的任何内置方式,这样我的显式检查也可以删除您建议的功能,而不是bug。使用其FileOk事件拒绝您不喜欢的文件。@HansPassant,我不是说这是一个bug!相反,我在寻找OpenFileDialog中的任何内置方式,这样我的显式检查也可以删除您建议的内容。