2014-02-05 3 views
3

Какая правильная процедура присоединения datatrigger к элементу пользовательского интерфейса с использованием выражения blend 2013?Визуальный способ добавления DATATRIGGER в Expression Blend 2013

Если я пишу datatrigger непосредственно в xaml, он работает хорошо, но я хочу знать, есть ли для этого «визуальный способ».

Например, создание стиля ListBoxItem я делаю что-то вроде этого:


<DataTemplate x:Key="BoundingBoxTemplate" DataType="{x:Type is:BoundingBoxViewModel}" > 
    <DataTemplate.Triggers> 
     <DataTrigger Binding="{Binding IsBorderVisible}" Value="True"> 
      <Setter TargetName="InsideRectangle" Property="Stroke" Value="Blue" /> 
     </DataTrigger> 
    </DataTemplate.Triggers> 
    <Grid> 
     <Rectangle x:Name="InsideRectangle" 
        Width="{Binding Width}" 
        Height="{Binding Height}" 
        Fill="Black" 
        SnapsToDevicePixels="True" /> 
    </Grid> 
</DataTemplate> 

Спасибо Lorenzo

ответ

5

Вот пример того, как вы бы сделайте это с помощью GUI.

Рассмотрит окно:

Цель в моем примере это сделать Stroke из Rectangle синего цвета при Checkbox.IsChecked изменения свойства в True.

Для этого сначала мы должны добавить ChangePropertyAction от Assets>Behaviors.

Перетащите его на окно/шаблон/что угодно. Я положил его в окно:

Теперь, если вы выбираете его можно указать Trigger в Properties.

Я установил TriggerType к DataTrigger, в Binding к Checkbox.IsChecked и требуемое значение для Trigger к True.

Далее я указываю Value, который должен быть изменен при стрельбе Trigger.

Я поставил Target в Rectangle, указанный Stroke в PropertyName и установите Value это свойство должно получить, когда Trigger огней в синий цвет.

Если я теперь запустить приложение это результат, когда я проверяю CheckBox:

enter image description here