【发布时间】:2011-08-11 08:44:28
【问题描述】:
我是在 WPF 中使用 MVVM 的初学者,发现似乎无法更改文本框或标签的值。这是一个例子。
在 Xaml 中:
Name 的原始值为“Peter”。
但是在我按下一个在 ViewModel 中调用命令并将 Name 的值更改为的按钮之后 “约翰”。因此,假设文本框的值也将更改为 John。但是,它不会改变。
我在网上找了很多例子,发现没有一个实现这种功能。我从他们那里学到的是使用 ListView 的 Command 和 ItemsSource。 当我使用 button to raise 命令更改视图的 ItemsSource 时,ListView 的值会发生变化。当 Binding to ItemsSource 改变时,它的值会自动改变。
但是,即使绑定到它们的值已经更改,我也无法更改 TextBox 或 Label 的值。
实际上,我在 MVVM 方面真的很年轻。我想我还有很多我不知道的。 你能给我一个例子,说明我应该如何在单击按钮后对文本框进行更改?顺便说一句,我不太确定如何为按钮制作命令。它似乎涉及我在网上的示例中找到的很多代码。有没有更简单的方法?
非常感谢。
【问题讨论】:
-
你的 ViewModel 是否实现了
INotifyPropertyChanged? -
+1 Stephan 我建议你把它写下来,因为它可能就是答案。
-
非常感谢!我真的没有这样做。
-
但是怎么做呢?我在网上没有找到任何东西。再次感谢!
-
我同意斯蒂芬的观点,但是你能把你的模型代码放在这里吗?