WPF双向绑定可以通过以下步骤实现:
- 首先,在XAML中,将需要进行双向绑定的控件的
Mode
属性设置为TwoWay
,例如:
- 确保数据对象实现了
INotifyPropertyChanged
接口,该接口提供了属性更改通知功能。例如:
public class ViewModel : INotifyPropertyChanged
{
private string _name;
public string Name
{
get { return _name; }
set
{
if (_name != value)
{
_name = value;
OnPropertyChanged(nameof(Name));
}
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected virtual void OnPropertyChanged(string propertyName)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
- 在代码中,将数据对象设置为控件的
DataContext
,例如:
public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); DataContext = new ViewModel(); } }
这样,当用户在文本框中输入时,数据对象的Name
属性会自动更新,并且当Name
属性在代码中改变时,文本框中的内容也会自动更新。