我想在<Window.Resources>
中制作一个通用的Style
,以允许我在侧面设置ToggleButton
的可见性。我找不到解决这个问题的具体问题。隐藏ComboBox切换按钮?
我在下面做了这个Style
,但它似乎隐藏项目中的每个ComboBox
,即使我只在IsVisible
为真时设置了触发器。
代码:这是我尝试在款式,
<Window.Resources>
<Style x:Key="ComboBoxToggleStyle" TargetType="{x:Type ToggleButton}">
<Setter Property="Visibility" Value="{Binding Path=IsVisible,
RelativeSource={RelativeSource AncestorType={x:Type ComboBox}}}" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ToggleButton}">
<ControlTemplate.Triggers>
<Trigger Property="IsVisible" Value="True">
<Setter Property="Visibility" Value="Hidden" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
这是在项目的所有CombBox
主要风格,
<Style TargetType="{x:Type ComboBox}">
<Setter Property="IsEditable" Value="False" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ComboBox}">
<Grid>
<ToggleButton Grid.Column="1"
Style="{StaticResource ComboBoxToggleStyle}">
<....More styles below...>
任何帮助点我在正确的方向将是伟大的。
您ComboBoxToggleStyle的控件模板是空的。 ..这意味着ToggleButton没有“外观”。究竟何时以及如何隐藏ToggleButton? – mm8
@ mm8,当我在实际的ComboBox XAML中设置IsVisible =“True”''''''''''''''''''''''''''''''''''''''我想禁用切换按钮。 – KyloRen
IsVisible是您的自定义属性吗?因为内置的一个不能设置。它是只读的... – mm8