C# OpenFileDialog/CommonOpenFileDialog

C# OpenFileDialog/CommonOpenFileDialog

我正在处理这段代码,它应该打开一个文件对话框并将它们放入文本框中。

错误是每次我 select 超过 1 个文件而 运行 应用程序时,我在文本框中收到错误消息。如果我 select 只有一个文件,它工作正常。

代码是这样

    private void filePickerButton_Click(object sender, RoutedEventArgs e)
    {
        // Create the OpenFileDialog object
        OpenFileDialog dialog = new OpenFileDialog();
        dialog.InitialDirectory = "C:\Users";
        dialog.Multiselect = true;

        // Check to see if we have a result 
        if (dialog.ShowDialog() == true)
        {
            filePickerTextBox.Text = dialog.FileNames.ToString();
        }
        else
        {
            outputTextBox.Text = "Operation cancelled." + "\n" + outputTextBox.Text;
        }
    }

我在dialog.Filename.ToString()之间切换; (到 select 一个文件)和 dialog.Filenames.ToString();到 select 倍。当使用后者并 selecting 一个文件时(无论是只有一个,还是多个,都没有关系),我的文本框显示 System.String[]

有人知道如何解决这个问题吗?

谢谢!

当您选择多个文件时,您会得到一组文件,如您的文本框所示:System.String[]

你可以使用:

filePickerTextBox.Text = string.join(",", dialog.FileNames);