2016-07-04 6 views
3

Dies ist der XAML-Code der Fußzeile setzen:Wie Listview Fußzeile IsVisible = false

<ListView.FooterTemplate IsVisible="{Binding IsLoading}"> 
    <DataTemplate> 
     <StackLayout Padding="8"> 
     <Label Text ="Loading ..." 
       HorizontalOptions="CenterAndExpand" 
       VerticalOptions="CenterAndExpand"/> 
     <ActivityIndicator IsRunning="{Binding IsLoading}"             
       Color="Blue" 
       HorizontalOptions="CenterAndExpand" 
       VerticalOptions="CenterAndExpand"/> 
     </StackLayout> 
    </DataTemplate>   
    </ListView.FooterTemplate> 

Die ActivityIndicator wie beabsichtigt funktioniert (es stoppt, wenn IsLoading eingestellt ist false). Aber ich möchte die ganze Fußzeile verschwinden lassen, sobald IsLoading auf false eingestellt ist, und ich kann das nicht passieren.

+0

Versuchen Sie, eine Nullable-IsLoading vorbei, wenn es geladen wird, es gesetzt –

+0

@AkashKava Es wirft ein 'System null. NullReferenceException: Objektreferenz wird nicht auf eine Instanz eines Objekts gesetzt. 'Bei der Ausführung von' PropertyChanged (dies, neue PropertyChangedEventArgs (propertyName)); '(nur wenn 'IsLoading' auf 'null' gesetzt ist). –

Antwort

0

Sie müssen die BindingContext für die Footer einstellen und ändern die IsVisible auf die StackLayout:

<ListView Footer="{Binding IsLoading}">  
    <ListView.FooterTemplate > 
     <DataTemplate> 
      <StackLayout IsVisible="{Binding .}" Padding="8"> 
       <Label Text="Loading ..." HorizontalOptions="CenterAndExpand" VerticalOptions="CenterAndExpand" /> 
       <ActivityIndicator IsRunning="{Binding .}" Color="Blue" HorizontalOptions="CenterAndExpand" VerticalOptions="CenterAndExpand" /> 
      </StackLayout> 
     </DataTemplate> 
    </ListView.FooterTemplate> 
</ListView> 
+1

Ich hatte versucht, das zu tun. Aber wenn ich IsVisible an das Element binden, das das Kind von DataTemplate ist, hinterlässt es nur einen leeren Platz am Ende der Liste. Das heißt: Der Raum, der früher von der Fußzeile benutzt wurde, ist immer noch vorhanden, aber seine Elemente sind nicht mehr sichtbar –

Verwandte Themen