gpt4 book ai didi

c# - WPF Listview 空文本

转载 作者:太空狗 更新时间:2023-10-29 22:35:23 24 4
gpt4 key购买 nike

如何使用 GridView 在 WPF ListView 中显示空文本(如在 ASP.net 中),例如“请选择一个人”或“0 项成立”?

最佳答案

此 XAML 将执行类似的操作,它有一个显示列表和隐藏消息的可见 ListView,并在列表为空时使用触发器切换可见性。

下面的代码适用于任何 IList 或 ICollection,但同样的技术可用于任何数据源,就像往常一样,如果您希望在添加或删除项目时更新显示,则需要使用 ObservableCollection 或类似的。

ContentPresenter 在那里是因为您只能在模板或样式中使用触发器,所以我们将控件放在 DataTemplate 中并使用 ContentPresenter 来显示它。

如果您希望消息显示在 ListView 中,那么您所要做的就是删除隐藏 ListView 的 Setter 并向 TextBlock 添加一些边距以将其定位在 ListVIew 中第一个项目应该出现的位置。

<ContentPresenter Content="{Binding}">
<ContentPresenter.ContentTemplate>
<DataTemplate>
<Grid>
<ListView Name="list" ItemsSource="{Binding MyList}"/>
<TextBlock Name="empty" Text="No items found" Visibility="Collapsed"/>
</Grid>
<DataTemplate.Triggers>
<DataTrigger Binding="{Binding MyList.Count}" Value="0">
<Setter TargetName="list" Property="Visibility" Value="Collapsed"/>
<Setter TargetName="empty" Property="Visibility" Value="Visible"/>
</DataTrigger>
</DataTemplate.Triggers>
</DataTemplate>
</ContentPresenter.ContentTemplate>
</ContentPresenter>

关于c# - WPF Listview 空文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1019017/

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