我正在学习绑定,并希望绑定到位于我的ViewModel中的类。
因此,在XAML中,我将DataContext设置为ViewModel,并将TextBox的文本属性绑定到ViewModels属性。
所以在我的ViewModel中我有这个:
$2
MyClass包含:
"blarg"
在方法private MyClass _myClass = new MyClass();
public MyClass myClass
{
get => _myClass;
set
{
if (_myClass == value) return;
_myClass = value;
OnPropertyChanged("myClass");
}
}
内的ViewModel中,我想现在用public class MyClass : INotifyPropertyChanged
{
private int _myProperty;
public int MyProperty
{
get => _myProperty;
set
{
if(_myProperty == value) return;
_myProperty = value;
OnPropertyChanged("MyProperty");
}
}
[...]
}
LoadData()
属性
myClass
因此MySqlDataReader
向我显示了readed值,但我的XAML中的TextBlock显示了myClass.MyProperty = reader["ID"] as int? ?? default(int);
Debug.WriteLine(myClass.MyProperty);
(Debug.WriteLine
)。
但为什么会这样?
在我的视图中,我按如下方式设置DataContext
0
在视图的代码后面,调用ViewModel中的方法:
default(int)