如何使用上次输入的值加载WPF窗口?

时间:2014-05-20 06:02:44

标签: c# wpf wpf-controls

我有2个WPF窗口。两个窗口都有文本框和组合框。在将数据输入Window1后,用户按下"下一步"按钮和Window2已加载。 Window2有一个" Back"按钮将重新加载Window1,用户想要更改某些值。由于它是同一个会话,我希望在" Back"按下Window2中的按钮。我应该如何在C#或XAML中进行操作?

2 个答案:

答案 0 :(得分:0)

你必须在窗口1中取一个属性,如

 public string ChangeValue { get; set; }

当你在那时按后退时,可以使用窗口1的实例设置属性值

instanceofWindow1.ChangeValue="Value";

答案 1 :(得分:0)

每个窗口都应该有自己的ViewModel。这些包含您在窗口中键入的值。如果单击next(并销毁第一个窗口),则应实现某种保存方法(单击Next时调用的ICommand),将ViewModel的当前状态保存到模型类(或数据库或文本文件) ...)。单击后退时必须重新加载模型,将其与ViewModel连接并显示Window1。

它接缝你不熟悉WPF,也许来自另一个答案的链接可能会帮助你开始:https://stackoverflow.com/a/2034333/1015350

此外,您应该进入主题:

  • MVVM
  • 个ICommand
  • 数据绑定

经验法则:您的代码隐藏文件应该不包含任何内容。这都是通过数据绑定完成的。