是否可以在Expression Blend 3中查看设计中数据触发器的效果?

时间:2010-01-13 00:33:01

标签: wpf xaml expression-blend datatrigger

Blend支持显示样式资源的图形表示,并允许您选择要查看或修改的活动属性/事件触发器。但是,由DataTriggers控制视觉元素是很常见的。是否有可能告诉设计师它应该将DataTrigger视为“活动”,以便可以在设计师中查看其视觉变化?

示例:

<Style x:Key="MyBorder" TargetType="Border">
    <Setter Property="CornerRadius" Value="5" />
    <Style.Triggers>
        <DataTrigger Binding="{Binding IsRandomPropertyActive}" Value="True">
            <Setter Property="Background">
                <Setter.Value>
                    <LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
                        <GradientStop Color="#FFFF8935" Offset="0" />
                        <GradientStop Color="#FFFF610C" Offset="1" />
                    </LinearGradientBrush>
                </Setter.Value>
            </Setter>
        </DataTrigger>
    </Style.Triggers>
</Style>

在设计器中,这只显示一个空框,因为默认样式没有定义特定的视觉方面。反正有没有告诉设计师我希望它假设IsRandomPropertyActive是真的,并显示适当的样式?

1 个答案:

答案 0 :(得分:2)

如果您使用带有Blend的模拟ViewModel,一个很好的技巧是从项目中的单独XAML文件加载您的设计时ViewModel。如果这样做,您可以轻松更改Blend中的XAML,并立即看到更改生效。例如,您可以将模拟ViewModel的XAML更改为:

<AViewModelObject>
  ...
  <AnotherViewModelObject ... IsRandomPropertyActive="true" ... />
  ...
</AViewModelObject>

我不知道有任何更简单的方法来实现您想要的功能。