首页 > 解决方案 > 将转换器与 Label 的可见性 Xamarin 表单一起使用时如何将默认值设置为 false

问题描述

我正在使用具有Label'IsVisible属性的转换器。

<Label IsVisible="{Binding products, Converter={StaticResource EmptyCollectionToBoolConverter}}" Text="No data found">  

如果products为空则EmptyCollectionToBoolConverter返回。当屏幕第一次加载时“未找到数据”消息出现几秒钟,然后数据正在加载。truefalse

我想修复它,只有在何时products为空时才需要显示标签。我该怎么做?

标签: xamlxamarinxamarin.formsconverters

解决方案


如果您使用的是 CollectionView ,则可以使用EmptyView,当集合为空时,它将显示您放入该 XAML 中的任何内容。

或者您可以实现也实现了 emptyViewTemplate 的 bindablelayout

或者您将不得不创建另一个绑定或另一个转换器。

类似的东西public bool MyBinding{get=> myList!=null | myList.Count != | isLoadingFlag }。但是如果你修改你的集合,你将不得不调用 propertychanged 事件


推荐阅读