Удаление стрелки элемента «аккордеон» и цвета фона по умолчанию?

Я использую Accordion из WPFToolkit и хотел удалить стрелку элемента аккордеона также, когда я пытаюсь отредактировать его в Expression Blend4, тогда он не позволяет мне туда. Итак, если кто-нибудь может помочь с образцом шаблона, как я могу скрыть стрелку и синий фон по умолчанию.

Заранее спасибо.


person Nivid Dholakia    schedule 20.12.2011    source источник


Ответы (1)


Вы можете просто отредактировать стиль управления. Этот пример взят из инструментария Silverlight, но держу пари, что в нем все те же принципы.

1) Удалить стрелку

У меня есть файл с именем toolkitStyles.xaml, в котором я определил следующий стиль.

<Style TargetType="layouttoolkit:AccordionButton" x:Key="DefaultAccordionButtonStyle">

Внутри этого стиля (вам придется поискать его) вы найдете код, похожий на этот

<Path x:Name="arrow" Data="F1 M 301.14,-189.041L 311.57,-189.041L 306.355,-182.942L 301.14,-189.041 Z " HorizontalAlignment="Center" Height="5" Stretch="Uniform" Width="8" Fill="{StaticResource BlackBrush}" RenderTransformOrigin="0.5,0.5" VerticalAlignment="Center">

Закомментируйте его, а затем выполните поиск по x:Name (это может быть не «стрелка» в WPFToolkit) и удалите все, что на него ссылается, чтобы вы могли его создать.

2) Удалить синий фон

Найдите такой стиль, как

<Style TargetType="System_Windows_Controls:AccordionItem" x:Key="DefaultAccordionItemStyle">

Найдите такую ​​строку. Это, вероятно, ближе к нижней части стиля. (Обратите внимание, что в моем случае я уже установил Background="Transparent", ваш будет либо синим, либо привязкой к шаблону, в любом случае просто установите его прозрачным или любым другим цветом, который вы хотите)

<layouttoolkit:AccordionButton x:Name="ExpanderButton" Background="Transparent" ContentTemplate="{TemplateBinding HeaderTemplate}" Content="{TemplateBinding Header}" Foreground="{TemplateBinding Foreground}" FontWeight="{TemplateBinding FontWeight}" FontStyle="{TemplateBinding FontStyle}" FontStretch="{TemplateBinding FontStretch}" FontSize="{TemplateBinding FontSize}" FontFamily="{TemplateBinding FontFamily}" HorizontalAlignment="{TemplateBinding HorizontalAlignment}" HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" IsTabStop="True" IsChecked="{TemplateBinding IsSelected}" Margin="0,0,0,0" Padding="0,0,0,0" Grid.Row="0" VerticalAlignment="{TemplateBinding VerticalAlignment}" VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"/>
person Malcolm O'Hare    schedule 20.12.2011