WPF: стили не применяются
У меня есть настройки как
<ribbon:RibbonGallery>
<ribbon:RibbonGallery.Resources>
<Style TargetType="ribbon:RibbonGalleryItem">
<Setter Property="Width" Value="24" />
<Setter Property="Padding" Value="0" />
</Style>
<Style TargetType="Rectangle">
<Setter Property="Width" Value="16" />
<Setter Property="Height" Value="16" />
</Style>
</ribbon:RibbonGallery.Resources>
</ribbon:RibbonGalleryCategory>
<ribbon:RibbonGalleryCategory x:Name="themeColors" Header="Theme Colors" MinColumnCount="10" MaxColumnCount="10">
<ribbon:RibbonGalleryCategory.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal" >
<Rectangle Fill="{Binding}" />
</StackPanel>
</DataTemplate>
</ribbon:RibbonGalleryCategory.ItemTemplate>
</ribbon:RibbonGalleryCategory>
</ribbon:RibbonGallery>
моя ширина и высота не применяются к прямоугольникам. мне интересно, что не так
1 ответ
Вы должны дать свой стиль Key
и затем ссылка на этот ключ в вашем коде:
<Style x:Key="RectStyle">
<Setter Property="Width" Value="16" />
<Setter Property="Height" Value="16" />
</Style>
Затем:
<StackPanel Orientation="Horizontal" >
<Rectangle Fill="{Binding}" Style="{StaticResource RectStyle}" />
</StackPanel>
Чтобы стиль применялся ко всем элементам типа, вам нужно определить его следующим образом:
<Style TargetType="{x:Type Rectangle}">
Используйте первый, если вы хотите иметь несколько стилей для элемента и выберите, какой из них вы хотите применить.