Rel*_*ity 8 wpf xaml combobox visibility togglebutton
我有一个WPF应用程序.在一个窗口中有一个组合框..如果只有一个项目,我想隐藏切换按钮并禁用组合框.
我怎么做到这一点?
我已经尝试了以下代码来隐藏切换按钮.但没有运气
任何帮助,将不胜感激.谢谢
<ComboBox x:Name="CList" ItemsSource="{Binding Path=C}" >
<Style TargetType="{x:Type ToggleButton}" >
<Style.Triggers>
<DataTrigger Binding="{Binding Path=Items.Count, ElementName=CList}" Value="1">
<Setter Property="Visibility" Value="Hidden" />
</DataTrigger>
</Style.Triggers>
</Style>
</ComboBox>
Run Code Online (Sandbox Code Playgroud)
更好的解决方案是在项目计数为零时用控件模板(仅包含文本块)替换组合框的模板.
这是同样的xaml.
<ComboBox Name="CList" ItemsSource="{Binding Path=C}"
SelectedItem="{Binding Path=CC}" VerticalAlignment="Center" Margin="0,0,10,0" >
<ComboBox.Style>
<Style TargetType="{x:Type ComboBox}" >
<Style.Triggers>
<DataTrigger Binding="{Binding Path=Items.Count, ElementName=CList}" Value="1">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate>
<TextBlock Text="{Binding Items[0], ElementName=CList}" />
</ControlTemplate>
</Setter.Value>
</Setter>
</DataTrigger>
</Style.Triggers>
</Style>
</ComboBox.Style>
</ComboBox>
Run Code Online (Sandbox Code Playgroud)