私はカスタムを実装していますTextBox
:
public class MyTextBox : TextBox
{
// ...
}
XAMLから使用しています:
<MyTextBox Text="{Binding MyProperty}" />
ViewModel のプロパティにバインドされています。
public class MyDataContext : INotifyPropertyChanged
{
public string MyProperty
{
get { return _myPropertyBackingField; }
set
{
_myPropertyBackingField = value;
PropertyChanged(this, new PropertyChangedEventArgs("MyProperty"));
}
}
// ...
}
質問:で、が変更されたことをどのようMyTextBox
に検出できますか?MyProperty
MyProperty = "NewValue";
できれば、プログラムによる変更と、ユーザーが値を編集することによって変更がトリガーされたときを区別したいと思います。つまり、オーバーライドは私にはうまくいかないと思いますOnPropertyChanged
。