WPF中datagrid分页

2024-09-03 13:48
文章标签 分页 wpf datagrid

本文主要是介绍WPF中datagrid分页,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

namespace WpfApplication1
{/// <summary>/// 枚举类型/// </summary>public enum sex{男,女};public class company{public string companyname;public string name;public string sex;public int age;public string job;}/// <summary>/// MainWindow.xaml 的交互逻辑/// </summary>public partial class MainWindow : Window{List<company> ls_company = new List<company>();//用于分页public MainWindow(){InitializeComponent();DataGridBinding();}void DataGridBinding(){SqlConnection conn = new SqlConnection("data source=127.0.0.1;database=datagridtest;user id=sa;password=sa123456");SqlCommand com = new SqlCommand();com.Connection = conn;com.CommandText = "select * from company";DataSet ds = new DataSet();SqlDataAdapter sda = new SqlDataAdapter();sda.SelectCommand = com;try{sda.Fill(ds);//填充dataset}catch (Exception ex){MessageBox.Show(ex.Message);}finally{conn.Close();conn.Dispose();}//表示用于排序、筛选、搜索、编辑和导航的 DataTable 的可绑定数据的自定义视图。 //DataView 不存储数据,而是表示其对应的 DataTable 的已连接视图。 //对 DataView 的数据的更改将影响 DataTable。 对 DataTable 的数据的更改将影响与之关联的所有 DataViewforeach (DataRow m in ds.Tables[0].Rows){ls_company.Add(new company { companyname = m["companyname"].ToString(), name = m["name"].ToString(), sex = m["sex"].ToString(), age = int.Parse(m["age"].ToString()), job = m["job"].ToString() });}datagrid.ItemsSource = ds.Tables[0].DefaultView;//public DataView DefaultView { get; }}//number表示每个页面显示的记录数    currentSize表示当前显示页数  /// <summary>////// </summary>/// <param name="number">每页多少记录</param>/// <param name="currentSize">当前第几页</param>private void Binding(int number, int currentSize){List<company> ls_curent = new List<company>();int count = ls_company.Count;//多少条记录int totalpage = 0;//总页数int pageSize = int.Parse(textboxpage.Text);//总页数if (count % number == 0){pageSize = count / number;}else{pageSize = count / number + 1;}tbkTotal.Text = pageSize.ToString();tbkCurrentsize.Text = currentSize.ToString();ls_curent = ls_company.Take(number * currentSize).Skip(number * (currentSize - 1)).ToList();   //刷选第currentSize页要显示的记录集  datagrid.ItemsSource = ls_curent;        //重新绑定dataGrid1  }

要点:

1、用Linq从list泛型中选择,有take以及skip方法

2、先将全部数据转存到list中,不过这仅仅适用于总量很少的数据


这篇关于WPF中datagrid分页的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1133127

相关文章

oracle分页和mysql分页

mysql 分页 --查前5 数据select * from table_name limit 0,5 select * from table_name limit 5 --limit关键字的用法:LIMIT [offset,] rows--offset指定要返回的第一行的偏移量,rows第二个指定返回行的最大数目。初始行的偏移量是0(不是1)。   oracle 分页 --查前1-9

fastreport打印trichedit分页问题的解决

用fastreport来打印richedit里面的内容。刚开始放一个frxrichview组件到报表上,然后在 var str: TMemoryStream; begin    begin      str:= TMemoryStream.Create;      CurrRichRecord.richedit.Lines.SaveToStream(str);      str.Posit

简单Hbase 分页方案

简单Hbase分页方案 网上大多数分页方案分为从服务端分页或者从客户端分页 服务端分页方式主要利用PageFilter过滤器,首先太复杂,其次针对集群的兼容性不是很好,作者利用服务端分页+客户端分页结合方式给出一种简单易行的中间方案。 1.利用PageFilter过滤器从服务端分页,过滤出所需要的最大条数, 注:作者认为大多数用户不会进行太深的翻页,假设pageSize=5,客户饭100页一共

SpringBoot项目-实现简单的CRUD功能和分页查询

背景 本博文主要是创建了一个新的SpringBoot项目,实现基本的增删改查,分页查询,带条件的分页查询功能。是方便初学者学习后端项目的一个比较清晰明了的实践代码,读者可根据博文,从自己动手创建一个新的SpringBoot项目,到使用PostMan测试基本请求,完完全全实践一遍,写出自己的代码,或者实现自己想要的功能。因为在这个过程中会遇到许多的问题,从JDK的版本选择到跑通SpringBo

Jasperreports+jaspersoft studio学习教程(八)- 报表分页和大量数据内存处理

9.1 设计报表模板 9.1.1 使用Table组件新建模板(步骤参考教程七)如下: 9.1.2 模板自带变量 $V{PAGE_NUMBER} :代表当前页数(可以是页码也可以是页数,通过TextField的计算时间的不同值来设置) $V{PAGE_COUNT} :当前页面中记录的数目 $V{groupname_COUNT} :   代表当前组的记录数 $V{COLUMN_NU

WPF入门到跪下 第十三章 3D绘图 - 3D绘图基础

3D绘图基础 四大要点 WPF中的3D绘图涉及4个要点: 视口,用来驻留3D内容3D对象照亮部分或整个3D场景的光源摄像机,提供在3D场景中进行观察的视点 一、视口 要展示3D内容,首先需要一个容器来装载3D内容。在WPF中,这个容器就是Viewport3D(3D视口),它继承自FrameworkElement,因此可以像其他元素那样在XAML中使用。 Viewport3D与其他元素相

操作系统分页式存储管理

每次输入地址后,计算出页号,若页号越界,则给出错误提示。否则依次调用FIFO和LRU算法,这里值得注意的是,由于我们的FIFO算法先于LRU算法被调用,那么当在处理FIFO算法时,我们暂且不将位视图相应位置做变化,留到处理LRU算法再做处理。 对于FIFO、LRU算法的缺页,我们分两种情况考虑,第一种是模拟栈内还有空间,那么直接将其入栈。第二种是模拟栈内无空间,要发生置换。发生置换时把模拟栈最底

PHP 分页实现序号递加或递减排序

PHP 分页实现序号递加或递减排序 实现思路: 在循环前赋值变量i,然后在循环输出变量i 。 实现序号递加1表达式:i=(页数-1)× 每页条数+1                循环:$i++               asp:i=i+1 实现序号递减1表达式:i=总数—(页数-1)× 每页条数 +1           循环:$i--             asp:i=i-1

C# WPF燃气报警器记录读取串口工具

C# WPF燃气报警器记录读取串口工具 概要串口帧数据布局文件代码文件运行效果源码下载 概要 符合国标文件《GB+15322.2-2019.pdf》串口通信协议定义;可读取燃气报警器家用版设备历史记录信息等信息; 串口帧数据 串口通信如何确定一帧数据接收完成是个麻烦事,本文采用最后一次数据接收完成后再过多少毫秒认为一帧数据接收完成,开始解析出来。每次接收到数据更新一次re

【硬刚ES】ES入门 (13)Java API 操作(4)DQL(1) 请求体查询/term 查询,查询条件为关键字/分页查询/数据排序/过滤字段/Bool 查询/范围查询/模糊查询/高亮查询/聚合查

本文是对《【硬刚大数据之学习路线篇】从零到大数据专家的学习指南(全面升级版)》的ES部分补充。 1 请求体查询 2 高亮查询 3 聚合查询 package com.atguigu.es.test;import org.apache.http.HttpHost;import org.apache.lucene.search.TotalHits;import org.elasticse