Я пытаюсь создать простой шаблон заголовка для объекта аккордеона в silverlight 4.
Я добавил изображение и TextBlock в шаблон заголовка AccordionItem.Я хочу скрыть или показать изображение в зависимости от значений, введенных на странице.
Поскольку я хочу привязать эти значения непосредственно к фактическому элементу аккордеона, я создал новый тип 'AccordionItemWithIcons', который просто наследуется от AccordionItem, но добавляет пару свойств зависимости, чтобы справиться с этим.Я только показываю пару из этих свойств для краткости.:)
Итак, вот мой аккордеон с моим элементом управления 'AccordionItemWithIcons'.Обратите внимание, что свойство 'CheckIsVisible' имеет тип 'Visibility'
<Grid x:Name="LayoutRoot">
<Controls:Accordion Height="100">
<my:AccordionItemWithIcons
x:Name="FirstItem"
Content="Content Text"
Header="Header Text"
CheckIsVisible="Collapsed"
EventSummary="Summary Text"
HeaderTemplate="{StaticResource AccordionItemHeaderTemplate1}"/>
</Controls:Accordion>
</Grid>
А вот шаблон заголовка.
<DataTemplate x:Key="AccordionWithIcons_HeaderTemplate1" >
<Grid >
<StackPanel Orientation="Horizontal" VerticalAlignment="Top">
<TextBlock Text="{Binding EventSummary}" />
<Image Visibility="{Binding CheckIsVisible}" Source="/Labyrinth;component/cross.png"/>
</StackPanel>
</Grid>
</DataTemplate>
Может кто-нибудь объяснить, как я могу связать текст TextBlock иВидимость изображения для значений, установленных в базовом объекте AccordionItemWithIcons?Я часами возился с различными DataContext и источниками и, похоже, не могу заставить это работать!
Я не знаю, поможет ли объяснить, что я пытаюсь достичь, но в конечном счете в кодея хочу иметь возможность сказать что-то вроде (показано ниже), чтобы показать или скрыть значок в шаблоне заголовка.
FirstItem.CheckIsVisible = Visibility.Visible