gpt4 book ai didi

wpf - 如何使 Style.Triggers 触发要应用的不同命名样式

转载 作者:行者123 更新时间:2023-12-02 02:39:20 24 4
gpt4 key购买 nike

假设我有以下内容:

<Style TargetType="{x:Type TextBox}">
<Setter Property="BorderThickness" Value="1" />
<Setter Property="BorderBrush" Value="Gray" />
<Style.Triggers>
<Trigger Property="IsFocused" Value="true">
<Setter Property="BorderBrush" Value="Green" />
<Setter Property="BorderThickness" Value="2" />
</Trigger>
</Style.Triggers>
</Style>

这工作正常,没有什么太大的错误,但这是一个相当简单的情况。如果我想将 IsFocused 样式状态列为显式样式,会发生什么情况如何将该样式引用为 IsFocused 样式,即

<Style x:key="ActiveStyle" TargetType="{x:Type TextBox}">
<Setter Property="BorderBrush" Value="Green" />
<Setter Property="BorderThickness" Value="2" />
</Style>

<Style TargetType="{x:Type TextBox}">
<Setter Property="BorderThickness" Value="1" />
<Setter Property="BorderBrush" Value="Gray" />
<Style.Triggers>
<Trigger Property="IsFocused" Value="true">
-- Here I want to reference ActiveStyle and not copy the copy the setters
</Trigger>
</Style.Triggers>
</Style>

最佳答案

我不认为你可以,但是你可以这样重用样式:

<Style x:Key="ActiveStyle" TargetType="{x:Type TextBox}">
<Style.Triggers>
<Trigger Property="IsFocused" Value="true">
<Setter Property="BorderBrush" Value="Green" />
<Setter Property="BorderThickness" Value="2" />
</Trigger>
</Style.Triggers>
</Style>

<Style TargetType="{x:Type TextBox}" BasedOn="{StaticResource ActiveStyle}">
<Setter Property="BorderThickness" Value="1" />
<Setter Property="BorderBrush" Value="Gray" />
</Style>

我没有看到其他解决方案:(

关于wpf - 如何使 Style.Triggers 触发要应用的不同命名样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1183982/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com