У меня есть TextBox, привязанный к свойству зависимости, я реализовал функцию PropertyChangedCallBack, когда при изменении текста мне нужно вызвать textbox.ScrollToEnd (), но я не могу, так как функция PropertChanged должна быть статической, есть ли способ обойти это?
static FrameworkPropertyMetadata propertyMetaData = new FrameworkPropertyMetadata("MyWindow",
FrameworkPropertyMetadataOptions.BindsTwoWayByDefault,
new PropertyChangedCallback(TextProperty_PropertyChanged));
public static readonly DependencyProperty TextProperty = DependencyProperty.Register("TextProperty", typeof(string), typeof(OutputPanel),
propertyMetaData);
private void TextProperty_PropertyChanged(DependencyObject obj, DependencyPropertyChangedEventArgs e)
{
textbox.ScrollToEnd(); //An object reference is required for the non-static field.
}
public string Text
{
get
{
return this.GetValue(TextProperty) as string;
}
set
{
this.SetValue(TextProperty, value);
//textbox.ScrollToEnd(); // I originally called it here but I think it should be in the property changed function.
}
}
Спасибо,
Имон