Dies wird, wie sieht mein listbox:WP7 - einige Elemente in listbox nach Button-Klick zeigen Zeige mehr Artikel
<ListBox x:Name="ForthListBox"
Margin="0,0,-12,0"
ItemsSource="{Binding Tops}"
Tap="ForthListBox_Tap" Style="{StaticResource TopListBoxStyle}">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Margin="0,0,0,17">
<TextBlock Text="{Binding Title}"
TextWrapping="Wrap"
Margin="12,0,0,0"
FontSize="40"/>
<TextBlock Text="{Binding Rating}"
TextWrapping="NoWrap"
Margin="12,-6,0,0"
Style="{StaticResource PhoneTextSubtleStyle}"/>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
Ich bearbeitete Vorlage für listbox so habe ich Button am Ende:
<Style x:Key="TopListBoxStyle" TargetType="ListBox">
<Setter Property="Background" Value="Transparent"/>
<Setter Property="Foreground" Value="{StaticResource PhoneForegroundBrush}"/>
<Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Disabled"/>
<Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="BorderBrush" Value="Transparent"/>
<Setter Property="Padding" Value="0"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ListBox">
<ScrollViewer x:Name="ScrollViewer" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" Foreground="{TemplateBinding Foreground}" Padding="{TemplateBinding Padding}">
<StackPanel><ItemsPresenter/>
<Button x:Name="BtnLoadMore" Click="BtnLoadMore_Click" Content="Další" />
</StackPanel>
</ScrollViewer>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Und ich habe ObservableCollection<Top>()
in MainViewModel
, die ich an DataContext
binden. Es ist in Ordnung und es zeigt meine Artikel, aber wie kann ich einstellen, dass ich nur 50 Artikel in dieser Listbox anzeigen möchte und nachdem ich auf den Button geklickt habe, möchte ich die ersten 50 Artikel und 50 Artikel mehr aus der Sammlung und immer wieder und wieder zeigen wo es keine weiteren Elemente in der Sammlung gibt, die nicht angezeigt werden, dann verberge die Schaltfläche. Danke
Ich habe versucht verbergen, dass ich zwei Sammlungen für diese haben würde. Eine, die zum Binden verwendet wird, und ich füge nur Elemente hinzu, die ich zeigen möchte, und zweite, die alle Elemente haben und aus denen ich Elemente bekomme, wenn ich auf den Knopf klicke, aber ich denke, dass diese Lösung nicht die beste ist. Ich hoffe, es gibt eine Option in {Binding} –