【发布时间】:2018-04-18 15:07:59
【问题描述】:
如何将按钮绑定到“MVVM 样式”中。
我刚刚开始将我的应用程序转换为 mvvm 样式。
我的代码:
XAML 在Page1.xaml 类中:
<Button x:Name="my_button" Content="Add" Command="{Binding msgbox}" Margin="451,82,39,0" Width="50" Height="31"/>
ViewModelPage1.cs 类:
public class ViewModelPage6
{
public void msgbox()
{
MessageBox.Show("mvvm is great");
}
}
谁能给个更简单的答案然后here
谢谢,
蓬松。
【问题讨论】:
-
链接答案中的“硬”是什么?
-
通常所有的逻辑都不在代码后面
-
使用 MVVM,您仍然需要创建许多包含转换器、数据模板选择器、行为等代码的类。只需创建可重用的
ICommand类一次,然后在任何地方使用它。我喜欢DelegateCommand。 “无代码隐藏”(纯 mvvm)意味着避免视图中的代码。ICommand实现是视图模型的东西。 -
正如 Sinatr 所说,您需要使用
ICommand。不过,请确保您还声明了Page1.xaml的数据上下文。如果它不知道它应该从ViewModelPage1.cs获取数据,那么它永远不会绑定。