我正在使用轉換器與Label的IsVisible屬性。
< Label IsVisible="{Binding products, Converter={StaticResource EmptyCollectionToBoolConverter}}" Text="No data found">
如果products是空的EmptyCollectionToBoolConverter回傳true否則false。當螢屏第一次加載時,"沒有找到資料 "的資訊會出現幾秒鐘,然后資料就會被加載。
我想解決這個問題,我需要在products為空時才顯示Label。我怎樣才能做到這一點呢?
uj5u.com熱心網友回復:
如果你使用CollectionView,你可以使用EmptyView,當集合為空時,它將顯示你放在該XAML中的任何內容。
或者您可以實作系結的布局,它也實作了 emptyViewTemplate。
或者你將不得不創建另一個系結或另一個轉換器。
uj5u.com熱心網友回復:
你可以在后面的代碼中覆寫IsVisible值。
<Label x: Name="MyLabel" IsVisible="{Binding products, Converter={StaticResource EmptyCollectionToBoolConverter}}" Text="No data found">
后面的代碼
// probably ctor
MyLabel.IsVisible = false;
第二種選擇可以是使用DataTrigger
< Label Text="No data found" IsVisible="false">>
<Label.Triggers>/span>
< DataTrigger TargetType="Label" Binding="{Binding products, Converter={StaticResource EmptyCollectionToBoolConverter}}" Value="True"/span>>
< Setter Property="IsVisible" Value="True" />
</DataTrigger>
</Label.Triggers>/span>
</Label>/span>
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/329104.html
標籤:
