我是 WPF 新手,正在尝试使用 VC# Express 制作我的第一个 WPF 桌面应用程序。
如果用户选择一个文件,我试图让三个打开的文件对话框完成,其中包含显示指定路径的文本字段。我找到了使对话框在单击按钮时出现的工作代码,但是如何获取文本字段以更新/绑定到文件路径?
类似于 HTML 中的文件输入框的工作方式是理想的。
...
编辑:
好的,我阅读了我下面的帖子并找到了解决方案...
现在,如何将控制台输出重定向到文本字段?
要回答有关重定向控制台输出的问题:
您最好更改代码以使用您希望输出的字符串触发事件。然后在 UI 中为该事件添加一个处理程序,并在处理程序中更新文本字段。
要声明事件,请在处理类中添加类似以下代码:
public event EventHandler<StringEventArgs> Process_Message;
whereStringEventArgs
是一个基于该类的类,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;
}
显然,您需要重命名内容以适合您的应用程序。
EventArgs
在 MSDN 中查找事件。
如果我理解正确,请使用 FileDialog.FileName 到完整路径..并将其绑定到您的文本框。76梅尔