WPF DataGrid实现分页显示


主要代码如下

/// <summary>
        /// 读取指定页面的数据
        /// </summary>
        /// <param name="pagePerCount">每页显示的行数</param>
        /// <param name="page">当前第几页</param>
        /// <returns>总行数</returns>
        private int ReadTableData(int pagePerCount, int page)
        {
            if (page < 1) return 0;
            
            int listRow = 0;

            this._dataTableTempValue.Clear();

            _dataTableTempValue = _dataTableValue.Copy();
            _dataTableTempValue.Rows.Clear();
            foreach (DataRow row in _dataTableValue.Rows)
            {
                if ((listRow >= ((page - 1) * pagePerCount)) && (listRow < (page * pagePerCount)))
                {
                    _dataTableTempValue.ImportRow(_dataTableValue.Rows[listRow]);
                }
                listRow++;
            }

            int totalPages = Convert.ToInt32(listRow / pagePerCount + ((listRow % pagePerCount) == 0 ? 0 : 1));
            this.TotalPages = totalPages;
            if (page > this.TotalPages) page = this.TotalPages;
            this.UpdatePage(totalPages, totalPages > 0 ? page : 0);
            this.ControlEnable();
            dataGrid.ItemsSource = DataTableTempValue.DefaultView;
            return listRow;
        }

运行界面

截图20160415161600327


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM