文本框上的WPF xaml绑定属性无法清除

时间:2016-05-15 05:33:36

标签: c# wpf xaml

我有一个绑定到我的viewModel属性

之一的文本框
        <TextBox x:Name="box" Height="20" TextWrapping="Wrap" Text="{Binding name}"/>

viewModel.cs:

    public string name { get; set; }
    [...]
    public void clear(){
     name = "";
    }

AddCommand:Icommand class:

  public void Execute(object parameter){
  //do some stuff
  viewModel.clear();

  }

其他一切都很完美。我可以阅读文本框并使用它们在viewModel中进行一些计算,然后将这些计算绑定到要显示的标签上。但是在我阅读完这些文本框后我才能清除它们。我尝试将绑定设置为mode = twoway但仍然无法正常工作

1 个答案:

答案 0 :(得分:1)

您需要告诉WPF该属性已更改。

类似于

private string _name;
public string name
{
    get
    {
        return _name;
    }
    set
    {
        _name = value;
        PropertyChanged(this, new PropertyChangedEventArgs("name"));
    }
}
当然,大多数人都会创建一个基类,以避免因为复杂的参数而调用该属性的方法。