내가 만든 클래스의 다양한 필드를 표시하기 위해 일부 텍스트 상자를 데이터 바인딩하려고합니다.클래스 개체에 데이터 바인딩을 사용할 수 있습니까?
다음 코드를 시도했습니다.
MyClass ClassObj = new MyClass();
DataContext = ClassObj;
// Create a new binding
// Val1 is a variable of type String in MyClass class
Binding myNewBindDef = new Binding("Val1");
myNewBindDef.Mode = BindingMode.TwoWay;
myNewBindDef.Source = ClassObj;
// txtBox1is a TextBlock object that is the binding target object
BindingOperations.SetBinding(txtBox1, TextBox.TextProperty, myNewBindDef);
나는 System.Windows.Data 및 System.ComponentModel에 대한 사용 을 추가 한, 그리고 MyClass에가에서 INotifyPropertyChanged를 구현합니다. 그러나 응용 프로그램을 실행하고 ClassObj.Val1의 값을 업데이트해도 아무 것도 영향을 미치지 않으면 텍스트 상자가 비어 있습니다.
누락 된 단계가 있습니까? 아니면 더 좋은 방법이 있습니까?
감사