C# 无法清除textbox上的WPF xaml绑定属性

C# 无法清除textbox上的WPF xaml绑定属性,c#,wpf,xaml,C#,Wpf,Xaml,我有一个绑定到viewModel属性之一的文本框 <TextBox x:Name="box" Height="20" TextWrapping="Wrap" Text="{Binding name}"/> AddCommand:Icommand类: public void Execute(object parameter){ //do some stuff viewModel.clear(); } 其他一切都很完美。我可以读取文本框并使用它们在v

我有一个绑定到viewModel属性之一的文本框

        <TextBox x:Name="box" Height="20" TextWrapping="Wrap" Text="{Binding name}"/>
AddCommand:Icommand类:

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

  }

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

您需要告诉WPF属性已更改

类似于

private string _name;
public string name
{
    get
    {
        return _name;
    }
    set
    {
        _name = value;
        PropertyChanged(this, new PropertyChangedEventArgs("name"));
    }
}

当然,大多数人都会创建一个基类,以避免使用复杂的参数调用那个属性已更改的方法

太好了,谢谢。你所说的基类是什么,又是什么意思?@user1294510看看这个链接。基类将被称为ViewModelBase,并实现示例中所示的NotifyPropertyChanged方法。因此,您只需调用NotifyPropertyChanged()即可,而无需输入此+新propertychangedeventargs
private string _name;
public string name
{
    get
    {
        return _name;
    }
    set
    {
        _name = value;
        PropertyChanged(this, new PropertyChangedEventArgs("name"));
    }
}