Двусторонняя привязка в AvalonEdit не работает
Я использовал AvalonEdit в своем проекте, основанном на WPF и MVVM. После прочтенияэта почта Я создал следующий класс:
public class MvvmTextEditor : TextEditor, INotifyPropertyChanged
{
public static DependencyProperty DocumentTextProperty =
DependencyProperty.Register("DocumentText",
typeof(string), typeof(MvvmTextEditor),
new PropertyMetadata((obj, args) =>
{
MvvmTextEditor target = (MvvmTextEditor)obj;
target.DocumentText = (string)args.NewValue;
})
);
public string DocumentText
{
get { return base.Text; }
set { base.Text = value; }
}
protected override void OnTextChanged(EventArgs e)
{
RaisePropertyChanged("DocumentText");
base.OnTextChanged(e);
}
public event PropertyChangedEventHandler PropertyChanged;
public void RaisePropertyChanged(string info)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(info));
}
}
}
и использовал следующий XAML для использования этого элемента управления:
но переплет работаетOneWay
и неНе обновлять мое строковое свойство и не запускать правило проверки.
Как я могу исправить привязку к работе, как ожидалось?TwoWay