C# 在类中实现INotifyPropertyChanged
我在一个类中创建了INotifyPropertyChangedC# 在类中实现INotifyPropertyChanged,c#,wpf,inotifypropertychanged,C#,Wpf,Inotifypropertychanged,我在一个类中创建了INotifyPropertyChanged public class BindableBase : INotifyPropertyChanged { public event PropertyChangedEventHandler PropertyChanged; protected void Set<T>(ref T storage, T value, [CallerMemberName]string propertyN
public class BindableBase : INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged;
protected void Set<T>(ref T storage, T value, [CallerMemberName]string propertyName = null)
{
if (Equals(storage, value))
{
return;
}
storage = value;
RaisePropertyChanged(propertyName);
}
protected void RaisePropertyChanged([CallerMemberName]string propertyName = null)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
我遇到了以下错误
myUserControl不能有多个基类
INotifyPropertyChanged
用于视图模型类,而不是视图(或用户控件)本身。因此,在视图中通常不需要它们。如果要向用户控件添加字段,则应使用依赖项属性
请参见以下示例:
//
///标识值依赖项属性。
///
公共静态只读从属属性ValueProperty=
从属属性。寄存器(
“值”、类型(十进制)、类型(数字向上向下),
新的FrameworkPropertyMetadata(MinValue,新的PropertyChangedCallback(OnValueChanged),
新的强制值回调(强制值));
///
///获取或设置分配给控件的值。
///
公共十进制值
{
获取{return(decimal)GetValue(ValueProperty);}
set{SetValue(ValueProperty,value);}
}
public partial class myUserControl : UserControl, BindableBase