如何正确更改 UWP 中的样式?
How to change styles in UWP correctly?
告诉我如何更简洁地更改样式?问题是,我分别为每个元素更改样式,这不是很好
<VisualStateManager.VisualStateGroups>
<VisualStateGroup>
<VisualState>
<VisualState.StateTriggers>
<StateTrigger IsActive="{Binding IsOfferSO}" />
</VisualState.StateTriggers>
<VisualState.Setters>
<Setter Target="gridOffer1.Style" Value="{StaticResource SelectedOffer}" />
<Setter Target="gridOffer2.Style" Value="{StaticResource UnSelectedOffer}" />
<Setter Target="durationOffer1.Style" Value="{StaticResource SelectedTxtBlock}" />
<Setter Target="durationOffer2.Style" Value="{StaticResource UnSelectedTxtBlock}" />
<Setter Target="priceOffer1.Style" Value="{StaticResource SelectedTxtBlock}" />
<Setter Target="priceOffer2.Style" Value="{StaticResource UnSelectedTxtBlock}" />
</VisualState.Setters>
</VisualState>
<VisualState>
<VisualState.StateTriggers>
<AdaptiveTrigger MinWindowWidth="0" />
</VisualState.StateTriggers>
<VisualState.Setters>
<Setter Target="gridOffer1.Style" Value="{StaticResource UnSelectedOffer}" />
<Setter Target="gridOffer2.Style" Value="{StaticResource SelectedOffer}" />
<Setter Target="durationOffer1.Style" Value="{StaticResource UnSelectedTxtBlock}" />
<Setter Target="durationOffer2.Style" Value="{StaticResource SelectedTxtBlock}" />
<Setter Target="priceOffer1.Style" Value="{StaticResource UnSelectedTxtBlock}" />
<Setter Target="priceOffer2.Style" Value="{StaticResource SelectedTxtBlock}" />
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
是否有任何示例可以让您以更简单的方式执行相同的操作?
请参考此 document 来编辑您的样式,您可以为样式指定一个 TargetType 和一个 x:Key attribute 属性,然后通过设置目标控件的样式 属性使用显式键的 {StaticResource} 标记扩展引用。
如果你想这个样式可以默认影响每个目标控件。请仅为样式指定 TargetType
。
告诉我如何更简洁地更改样式?问题是,我分别为每个元素更改样式,这不是很好
<VisualStateManager.VisualStateGroups>
<VisualStateGroup>
<VisualState>
<VisualState.StateTriggers>
<StateTrigger IsActive="{Binding IsOfferSO}" />
</VisualState.StateTriggers>
<VisualState.Setters>
<Setter Target="gridOffer1.Style" Value="{StaticResource SelectedOffer}" />
<Setter Target="gridOffer2.Style" Value="{StaticResource UnSelectedOffer}" />
<Setter Target="durationOffer1.Style" Value="{StaticResource SelectedTxtBlock}" />
<Setter Target="durationOffer2.Style" Value="{StaticResource UnSelectedTxtBlock}" />
<Setter Target="priceOffer1.Style" Value="{StaticResource SelectedTxtBlock}" />
<Setter Target="priceOffer2.Style" Value="{StaticResource UnSelectedTxtBlock}" />
</VisualState.Setters>
</VisualState>
<VisualState>
<VisualState.StateTriggers>
<AdaptiveTrigger MinWindowWidth="0" />
</VisualState.StateTriggers>
<VisualState.Setters>
<Setter Target="gridOffer1.Style" Value="{StaticResource UnSelectedOffer}" />
<Setter Target="gridOffer2.Style" Value="{StaticResource SelectedOffer}" />
<Setter Target="durationOffer1.Style" Value="{StaticResource UnSelectedTxtBlock}" />
<Setter Target="durationOffer2.Style" Value="{StaticResource SelectedTxtBlock}" />
<Setter Target="priceOffer1.Style" Value="{StaticResource UnSelectedTxtBlock}" />
<Setter Target="priceOffer2.Style" Value="{StaticResource SelectedTxtBlock}" />
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
是否有任何示例可以让您以更简单的方式执行相同的操作?
请参考此 document 来编辑您的样式,您可以为样式指定一个 TargetType 和一个 x:Key attribute 属性,然后通过设置目标控件的样式 属性使用显式键的 {StaticResource} 标记扩展引用。
如果你想这个样式可以默认影响每个目标控件。请仅为样式指定 TargetType
。