Проблема с "{Binding RelativeSource = {RelativeSource FindAncestor - PullRequest
1 голос
/ 13 января 2010

Я работаю над приложением Prism Composite, в котором я загружаю различные виды в регион. Мне нужно убедиться, что размер загружаемого вида изменяется на ту же высоту, что и регион. Каждое представление - это пользовательский элемент управления, в котором Grid является внешним элементом. Я использую следующий код

    <Grid  Height="{Binding RelativeSource={RelativeSource FindAncestor,
        AncestorType={x:Type ItemsControl}}, Path=ActualHeight}">

Для установки высоты сетки. Моя проблема в том, что этот точный код отлично работает для одного представления, а для другого - нет. На сетке, которая не работает, высота - это то, что я ожидаю, как если бы свойство Высота не устанавливалось.

Любые предложения о том, как решить эту проблему.

1 Ответ

2 голосов
/ 13 января 2010

Не зная многого, я бы сказал, что эта проблема на самом деле сводится к обязательной проблеме. Отладка привязок сложна, но здесь есть действительно хорошая статья на эту тему: http://www.beacosta.com/blog/?p=52

Используйте подход «Diagnostics: PresentationTraceSources.TraceLevel = High», который описывает Bea, и выясните, к какому элементу вы на самом деле привязываетесь, наблюдая за окном вывода. Это должно помочь понять, почему это не получается.

Удачи.

...