WPF中的文件选择器对话框在哪里?

时间:2011-10-23 02:23:29

标签: c# wpf .net-4.0

<德尔> http://i.minus.com/i3xuoWZkpfxHn.png

我没有看到任何让我从我的电脑中挑选文件的东西......必须有一个,它在哪里?我可能错过了参考文献?


编辑:我想到的是一个文本框旁边有一个“浏览”按钮。现在我发现我可能不得不自己放置文本框和浏览按钮并在按钮上添加一个单击事件来打开对话框......

3 个答案:

答案 0 :(得分:50)

没有内置控件的文本框旁边有[Browse]按钮。你必须自己设定。

对于“打开文件”对话框本身,有OpenFileDialog in Microsoft.Win32 namespace

答案 1 :(得分:24)

要获得更多功能完整的答案,假设您有一个按钮BtnFileOpen和一个文本框TxtFile。首先,您需要从引用对话框中引用System.Windows.Forms程序集(确保选中标记,双击它似乎不会为我添加它)。

在按钮点击事件中:

private void BtnFileOpen_Click(object sender, RoutedEventArgs e)
{
    var fileDialog = new System.Windows.Forms.OpenFileDialog();
    var result = fileDialog.ShowDialog();
    switch (result)
    {
        case System.Windows.Forms.DialogResult.OK:
            var file = fileDialog.FileName;
            TxtFile.Text = file;
            TxtFile.ToolTip = file;
            break;
        case System.Windows.Forms.DialogResult.Cancel:
        default:
            TxtFile.Text = null;
            TxtFile.ToolTip = null;
            break;
    }
}

如果您已将文本框设置为已禁用,则可能希望编辑您的xaml以包含

ToolTipService.ShowOnDisabled="True"

答案 2 :(得分:5)

我通常只使用OpenFileDialog命名空间中的System.Windows.Forms。我使用SWF对其进行别名,然后它变为

SWF.OpenFileDialog o = new SWF.OpenFileDialog();