DataBinding — как привязать вложенные свойства к шаблону данных?

У меня есть шаблон данных

<DataTemplate x:Key="MyPivotItemTemplate">
        <controls:PivotItem Header="{Binding MyClassAName}" />
</DataTemplate>

в котором я использовал в

<controls:Pivot Title="Category" x:Name="myPivot"
 ItemTemplate="{StaticResource MyPivotItemTemplate}">

в котором я пытаюсь передать список ClassA в качестве источника сводного элемента, который определяется, как показано ниже.

Class ClassA
{
    String MyClassAName;
    ...
}
...
ClassA myClassAItem = new ClassA() {MyClassAName = "LOL"};
ClassACollection.Add(myClassAItem);
...
myPivot.ItemSource = ClassACollection;

Когда я пытаюсь запустить код, добавленный текст заголовка pivotitem представляет собой имя объекта предоставленной коллекции (т. е. «MyApp.ClassACollection») вместо значения значения MyClassAName ClassA (т. е. «LOL»). Итак, как я могу привязать MyClassAName каждого элемента ClassA к каждому из динамически созданных заголовков сводных элементов?

Спасибо!


person Frankie    schedule 24.12.2011    source источник


Ответы (1)


Существует известная проблема с привязкой данных к Pivot. Смотрите обходной путь здесь:

Элемент управления DataBound Pivot не создает первый PivotItem

Кроме того, путь привязки заголовка не соответствует свойству имени вашего класса. Попробуйте изменить на:

 <controls:PivotItem Header="{Binding MyClassAName}" />
person ColinE    schedule 24.12.2011
comment
Исправлена ​​ошибка опечатки. Первый pivotitem создан правильно, но проблема, о которой говорилось выше, осталась нерешенной. - person Frankie; 24.12.2011