打开文件对话框..值不在预期范围内

本文关键字:范围内 文件 对话框 | 更新日期: 2023-09-27 18:32:59

我正在尝试使用 openFileDialog,它一直工作到今天早上,当时我做了我认为是一个简单的更改......

我将过滤器和初始目录属性从硬编码字符串更改为应用程序设置,这就是错误出现的地方。据我所知,一切都应该没问题...生病发布新旧代码....

新代码

    private void btnOpenFile_Click(object sender, RoutedEventArgs e)
    {
        OpenFileDialog ofDialog = new OpenFileDialog();
        ofDialog.Filter = Properties.Settings.Default.openFileFilter;
        ofDialog.FilterIndex = 3;
        ofDialog.Multiselect = false;
        ofDialog.InitialDirectory = Properties.Settings.Default.openFileInitialDirectory;
        bool? fileSelected = ofDialog.ShowDialog();
        if(fileSelected == true)
        {
            selectedFileTxtBx.Text = ofDialog.FileName;
        }

应用程序设置

 Properties.Settings.Default.openFileFilter; = Exe (.exe)|*.exe|MSI (.msi)|*.msi| All (*.*)|*.*
 Properties.Settings.Default.openFileInitialDirectory; = ''''UNC''PATH

旧代码

    private void btnOpenFile_Click(object sender, RoutedEventArgs e)
    {
        OpenFileDialog ofDialog = new OpenFileDialog();
        ofDialog.Filter = "Exe (.exe)|*.exe|MSI (.msi)|*.msi| All (*.*)|*.*";
        ofDialog.FilterIndex = 3;
        ofDialog.Multiselect = false;
        ofDialog.InitialDirectory = "''''UNC''PATH";
        bool? fileSelected = ofDialog.ShowDialog();
        if(fileSelected == true)
        {
            selectedFileTxtBx.Text = ofDialog.FileName;
        }
    }

打开文件对话框..值不在预期范围内

如果内存正确,Properties.Settings.Default.openFileInitialDirectory实际上应该设置为''UNC'PATH,因为字符串已经被转义了。