Quantcast
Channel: Windows Presentation Foundation (WPF) forum
Viewing all articles
Browse latest Browse all 18858

Listview paging

$
0
0

I am trying to follow this to do my listview paging but nothing shows up in my listview at all. 

http://code.msdn.microsoft.com/windowsdesktop/CSWPFPaging-ce1ce482

Is it because the way I am binding? In debug mode, the CollectionViewSource & ObservableCollection have items in them but it doesn't show on listview.

<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch" SizeChanged="Grid_SizeChanged"><ListView x:Name="ResultsLstVw" SizeChanged="ResultsLstVw_SizeChanged" ScrollViewer.HorizontalScrollBarVisibility="Disabled"><ListView.ItemContainerStyle><Style TargetType="ListViewItem"><Setter Property="Height" Value="{Binding ElementName=ResultsLstVw, Path=ActualHeight, Converter={StaticResource heightConverter}}" />                    <Setter Property="Margin" Value="2"/></Style></ListView.ItemContainerStyle><ListView.View>               <GridView><GridView.ColumnHeaderContainerStyle><Style><Setter Property="FrameworkElement.Visibility" Value="Collapsed"/></Style></GridView.ColumnHeaderContainerStyle><GridViewColumn Header="Type" Width="{Binding ElementName=ResultsLstVw, Path=ActualWidth, Converter={StaticResource widthFourConverter}}" CellTemplate="{StaticResource Type}" /><GridViewColumn Header="Language" Width="{Binding ElementName=ResultsLstVw, Path=ActualWidth, Converter={StaticResource widthFourConverter}}" CellTemplate="{StaticResource Language}" /><GridViewColumn Width="{Binding ElementName=ResultsLstVw, Path=ActualWidth, Converter={StaticResource widthFourConverter}}" CellTemplate="{StaticResource AType}" /><GridViewColumn Header="Popularity" Width="{Binding ElementName=ResultsLstVw, Path=ActualWidth, Converter={StaticResource widthFourConverter}}" CellTemplate="{StaticResource Popularity}" />                    </GridView>                </ListView.View>                </ListView>        </Grid>

public static ObservableCollection<Result> result = new ObservableCollection<Result>();
        public static int currentPageIndex = 0;
        public static int itemPerPage = 3;
        public static int totalPage = 0;
        public static CollectionViewSource view = new CollectionViewSource();

        public SearchResultsUsrCntrl()
        {
            InitializeComponent();                       
        }

        private void UserControl_Loaded(object sender, RoutedEventArgs e)
        {
            Search();
        }

        public void Search()
        {
            
            // Calculate the total pages
            totalPage = itemcount / itemPerPage;
            if (itemcount % itemPerPage != 0)
            {
                totalPage += 1;
            }

            view.Source = result;
            view.Filter += new FilterEventHandler(view_Filter);
            ResultsLstVw.DataContext = view;
        }

        void view_Filter(object sender, FilterEventArgs e)
        {
            int index = result.IndexOf((Result)e.Item);

            if (index >= itemPerPage * currentPageIndex && index < itemPerPage * (currentPageIndex + 1))
            {
                e.Accepted = true;
            }
            else
            {
                e.Accepted = false;
            }
        }




Viewing all articles
Browse latest Browse all 18858

Trending Articles