c#/ WPF:创建一个浏览文件对话框

时间:2009-05-06 12:27:50

标签: c# wpf dialog

我是WPF的新手,正在尝试使用VC#Express创建我的第一个WPF桌面应用程序。

我正在尝试使用文本字段创建三个打开的​​文件对话框,如果用户选择文件,则显示指定的路径。我发现工作代码使单击按钮时出现对话框,但如何获取文本字段以更新/绑定到文件路径?

类似于HTML中的文件输入框的工作方式是理想的。

...

编辑:

好的,我看了我下面的帖子,找到了解决方案......

现在,如何将控制台输出重定向到文本字段?

2 个答案:

答案 0 :(得分:1)

回答有关重定向控制台输出的问题:

您最好更改代码以使用您希望输出的字符串触发事件。然后在UI中为该事件添加处理程序,并在处理程序中更新文本字段。

要声明一个事件,请在您的处理类中添加类似此代码的内容:

public event EventHandler<StringEventArgs> Process_Message;

其中StringEventArgs是一个基于EventArgs的类,用于包装发送消息。

要触发事件,请在处理类中添加类似此代码的内容:

Process_Message(this, new StringEventArgs(message));

在UI类中附加消息处理程序:

process.Process_Message += Process_Message;

要处理事件,请在UI类中添加类似此代码的内容:

private void Process_Message(object sender, StringEventArgs e)
{
     Action action = () => UpdateStatus(e.Message);
     {
         Dispatcher.Invoke(System.Windows.Threading.DispatcherPriority.Normal, action);
     }
     else
     {
            action();
     }         
}

您需要进行线程测试,因为无法从其他线程更新UI。

然后是UpdateStatus方法:

private void UpdateStatus(string message)
{
    statusTextBox.Text = message;
}

显然,您需要重命名适合您应用的内容。

在MSDN中查找事件和EventArgs

答案 1 :(得分:0)

如果我理解正确的话 将FileDialog.FileName用于完整路径..并将其绑定到文本框。 76mel