Я связал свойство Text TextBlock в моем UserControl с одним из его свойств DP. Начальная привязка работает, и я вижу, что текст отображается! Но позже, когда обновляется свойство FrameRate, оно не обновляется в TextBlock!
<UserControl>
...
<TextBlock Text="{Binding UiView.FrameRate, RelativeSource={RelativeSource AncestorType=UserControl}}"/>
...
</UserControl>
Код позади:
public UiView UiView
{
get => (UiView)GetValue(s_uiViewProperty);
set => SetValue(s_uiViewProperty, value);
}
public static readonly DependencyProperty s_uiViewProperty = DependencyProperty.Register(
nameof(UiView), typeof(UiView), typeof(UiViewPanel), new PropertyMetadata(OnUiViewPropertyChanged));
Свойство FrameRate определяется внутри класса UiView следующим образом:
private readonly FrameRate m_frameRate = new FrameRate();
public double FrameRate => m_frameRate.Current;
и я уверен, что он обновляется.