WPF: стили не применяются - PullRequest
       2

WPF: стили не применяются

1 голос
/ 18 сентября 2010

У меня есть настройки, как

<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 Ответ

2 голосов
/ 18 сентября 2010

Вам нужно присвоить вашему стилю 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}">

Используйте первый, если вы хотите иметь несколько стилей для элемента и выберите, какой из них вы хотите применить.

Источник

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...