Silverlight: изменение стиля для состояния - PullRequest
0 голосов
/ 19 мая 2011

Мой App.xaml выглядит следующим образом:

<Application xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
         x:Class="mySilverlightApp.App"
         >
<Application.Resources>
    <Style x:Name="ComboBoxStyle" TargetType="ComboBox">
        <Setter Property="FontFamily"  Value="Calibri.ttf#Calibri"></Setter>
    </Style>
</Application.Resources>

Как видите, я пытаюсь применить пользовательский стиль с тегами <Setter> к ComboBoxes в моем приложении.Но я хочу применить стили для разных состояний ComboBox (MouseOver и т. Д.).

Как я могу это сделать?

1 Ответ

1 голос
/ 19 мая 2011

Для этого вам нужно создать шаблон элемента управления в неявном стиле. Примерно так:

<Style x:Name="ComboBoxStyle" TargetType="ComboBox">
    <Setter Property="Template">
         <Setter.Value>
              <ControlTemplate TargetType="ComboBox">
                  ....
              </ControlTemplate>
         </Setter.Value>
    </Setter>
</Style>

Вы можете обратиться к этой ссылке для стандартных стилей / шаблонов управления для выпадающего списка: http://msdn.microsoft.com/en-us/library/dd334408(v=vs.95).aspx

Отличным способом начать пересматривать элементы управления является использование Blend. Вы можете щелкнуть правой кнопкой мыши элемент управления, который вы перетащили на артборд, и использовать команду «Редактировать шаблон -> Редактировать копию». Это создаст шаблон контроля по умолчанию для вас (тот же, что показан в ссылке, которую я предоставил).

Оттуда вы можете редактировать состояние наведения мыши в Blend, используя вкладку «Состояния».

Здесь много чего происходит, но это должно привести вас к правильному пути.

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