gpt4 book ai didi

WPF - 隐藏列表框项目

转载 作者:行者123 更新时间:2023-12-03 12:07:11 26 4
gpt4 key购买 nike

我有一个列表框,其中 itemtemplate 使用样式。样式指定带有数据触发器的边框,根据属性将边框的可见性设置为折叠。这工作正常,但我仍然可以看到列表中每个项目的一条非常窄的线,该线已折叠。我希望有人可以帮助设置可见性,以便没有可见的痕迹,因为当连续的项目折叠时,这很明显。

数据模板指定了一个外边框,里面有一个停靠面板——然后有一个停靠到这个停靠面板的堆栈面板。

任何帮助表示赞赏。

那么这是一个简化的模板:

<DataTemplate x:Key="myTemplate">
<Border BorderThickness="0">
<Border.Style>
<Style>
<Style.Triggers>
<DataTrigger Binding="{Binding Path=IsActive}" Value="False">
<Setter Property="Border.Visibility" Value="Collapsed" />
</DataTrigger>
</Style.Triggers>
</Style>
</Border.Style>
<DockPanel LastChildFill="True" HorizontalAlignment="Stretch">
<StackPanel DockPanel.Dock="Right" HorizontalAlignment="Right" >
<TextBlock Text="{Binding Path=SeqNo, Converter={StaticResource SeqToTextConv}}"/>
<Label Content="..." />
</StackPanel>
</DockPanel>
</Border>
</DataTemplate>

最佳答案

您成功地隐藏了您的项目,但是,ListBox 将您的每个项目包装在一个 ListBoxItem 中,这为您的项目添加了诸如选择之类的概念。我怀疑在隐藏项目的情况下,您仍然会看到 ListBoxItem。您可以使用 ItemContainerStyle 来隐藏 ListBoxItems ...

<ListBox>
<ListBox.ItemContainerStyle>
<Style TargetType="{x:Type ListBoxItem}">
<Style.Triggers>
<DataTrigger Binding="{Binding IsActive}" Value="False">
<Setter Property="Visibility" Value="Collapsed"/>
</DataTrigger>
</Style.Triggers>
</Style>
</ListBox.ItemContainerStyle>
</ListBox>

关于WPF - 隐藏列表框项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4697380/

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