日期:2014-05-17  浏览次数:20981 次

WPF,这个Button点击如何换成MVVM理念整

private void button1_Click(object sender, RoutedEventArgs e)
{
    BindingExpression bindingExpression = textbox1.GetBindingExpression(TextBox.TextProperty);
    bindingExpression.UpdateSource(); 
}


textbox1的文本绑定被修改为了Explicit方式(代码没写出来),这样,鼠标离开文本框的时候就不会自动更新了。
button1的点击事件,就是手动将textbox1的文本更新到数据源,这里面与textbox1进行了交互。
请问,如果要使用MVVM,在ViewModel里面,需要创建一个什么的属性呢?或者有其它好的方法没有?

------解决方案--------------------
界面对应一个model类,里面写个命令的属性,


 private RelayCommand myCommand;
        public ICommand MyCommand
        {
            get
            {
                return this.myCommand?? (this.myCommand= new RelayCommand(
                    () =>
                    {
                        //点击事件的方法
                    }
                    ));
            }
        }

 <Button Command="{Binding CancelCommand}" />其余属性省略
------解决方案--------------------
汗,你以为mvvm是什么意思啊
mvvm其实就是说的绑定的含义。
------解决方案--------------------
其实VM是V的DataContext