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是真的,并显示适当的样式?
答案 0 :(得分:2)
如果您使用带有Blend的模拟ViewModel,一个很好的技巧是从项目中的单独XAML文件加载您的设计时ViewModel。如果这样做,您可以轻松更改Blend中的XAML,并立即看到更改生效。例如,您可以将模拟ViewModel的XAML更改为:
<AViewModelObject>
...
<AnotherViewModelObject ... IsRandomPropertyActive="true" ... />
...
</AViewModelObject>
我不知道有任何更简单的方法来实现您想要的功能。