Подтвердить что ты не робот

Связывание с предком в WPF

У меня есть окно в одной сборке, у которой есть элемент управления TextBlock, который я хочу привязать к значению свойства класса, который является свойством DataContext этого родителя Windows. Класс, который служит в качестве DataContext, определяется только во второй сборке. Мой вопрос - какой тип мне нужно указать как тип в моей привязывающей инструкции. Могу ли я просто использовать тип свойства DataContext, который является общим для двух сборок, или мне нужно использовать тип DataContext?

Ниже приведено прототип того, как я думаю, что он должен работать, но поскольку я не смущен чем-то:)

Сборка # 1
Окно

<TextBlock 
    Text="{Binding RelativeSource={RelativeSource 
        AncestorType={x:Type client:Client}}, Path=Name }"/>

Сборка # 2
Application Shell

class Shell 
{
     public Client Client { get { return client; } set { client = value; } }
     OnStartup()
     {
          NavigationWindow window = new NavigationWindow();
          window.DataContext = this;
          window.Navigate(GetHomeView());
     }
}
4b9b3361

Ответ 1

должно работать следующее:

<TextBlock Text="{Binding RelativeSource={RelativeSource Mode=FindAncestor,
                                                         AncestorType={x:Type Window}},
                                                         Path=DataContext.Client.Name}" />