DateGridView 分页显示
l 思路:将数据表整体填充至一个Dataset中,探后部分显示(DataaAdapter Fill重载)
l DataGridView 控件
l BindingNavigator 控件
l Bindingsource 组件
private int startval = ;//设置起始页
private int valperpage = ;//设置每页要显示的条目数
private int totalvalNumber;//总条数
private int currentpage=;//当前页 private SqlDataAdapter mydpt;
private DataSet mydt; //窗体加载
private void Form1_Load(object sender, EventArgs e)
{
string constr = "server=192.168.100.222;user=sa;pwd=p@ssw1rd;database=pwd1";
string sql = "select * from book";
SqlConnection mycon = new SqlConnection(constr);
mycon.Open();
mydpt = new SqlDataAdapter(sql,mycon);
mydt = new DataSet();
mydpt.Fill(mydt,"book");
mycon.Close(); totalvalNumber = mydt.Tables[].Rows.Count;
//总页数计算
int totalpageNumber = (totalvalNumber % valperpage == ) ? (totalvalNumber / valperpage) : (totalvalNumber / valperpage + );
//设置标签显示
toolStripLabel1.Text ="/"+ totalpageNumber;
LoadData(); }
//创建绑定方法
private void LoadData()
{
currentpage = startval / valperpage + ;
toolStripTextBox1.Text = currentpage.ToString();
mydt.Clear();
mydpt.Fill(mydt,startval,valperpage,"book");//SQLdateadapt 填充的方法重载(填充的dataset,起始页,每页多少条目,哪个表)
bindingSource1.DataSource=mydt.Tables[];//组件bindingsource 等于dataset.表book填充。
bindingNavigator1.BindingSource = bindingSource1;//bindingnavigaor导航.bindingsource=bindingsource
dataGridView1.DataSource = bindingSource1; } //添加事件 导航集合选择后
private void bindingNavigator1_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
{
//如果事件集合的文本等于上一页
if (e.ClickedItem.Text=="上一页")
{
startval = startval - valperpage;
if (startval<)
{
MessageBox.Show("已经是第一页");
startval = ;
return;
} }
if (e.ClickedItem.Text=="下一页")
{
startval = startval + valperpage;
if (startval>totalvalNumber)
{
MessageBox.Show("已经是最后一页");
startval = startval - valperpage;
return;
}
}
LoadData(); } //这样写也是可以的!!!!!!!!!!!!!!!!!!!!!!!
//点击上一页事件
private void toolStripButton1_Click(object sender, EventArgs e)
{
startval = startval - valperpage;
if (startval<)
{
MessageBox.Show("已经是第一页");
startval = ;
return;
}
LoadData();
}
//点击下一页事件
private void toolStripButton2_Click(object sender, EventArgs e)
{
startval = startval + valperpage;
if (startval>totalvalNumber)
{
MessageBox.Show("已经是最后一页");
startval = startval - valperpage;
return;
}
LoadData();
}
DateGridView 分页显示的更多相关文章
- C#关于分页显示
---<PS:本人菜鸟,大手子还请高台贵手> 以下是我今天在做分页时所遇到的一个分页显示问题,使用拼写SQL的方式写的,同类型可参考哦~ ------------------------- ...
- 多页的TIFF图片在aspx页面分页显示
一.逻辑实现:将数据库中的二进制TIFF图片读出并分页显示在页面上. 1.显示界面 public FrameDimension MyGuid; ; ; public static MemoryStre ...
- asp.net gridview 分页显示不出来的问题
使用gridview分页显示,在点击第二页的时候显示空白,无数据. 原因是页面刷新,绑定datatable未执行 解决方法: 1.将datatable设置为静态 2.在OnPageIndexChang ...
- SSRS(rdl报表)分页显示表头和对表头的冻结处理
基础环境 最近在公司做西门子某系统的二次开发,需要用到SQLServer Reporting Services(SSRS).我们用的SQL版本是SQLServer 2008 R2:在设计报表时,表格用 ...
- JSP分页显示实例(基于Bootstrap)
首先介绍一款简单利落的分页显示利器:bootstrap-paginator 效果截图: GitHub官方下载地址:https://github.com/lyonlai/bootstrap-pagina ...
- scroll事件实现监控滚动条并分页显示示例(zepto.js)
scroll事件实现监控滚动条并分页显示示例(zepto.js ) 需求:在APP落地页上的底部位置显示此前其他用户的购买记录,要求此div盒子只显示3条半,但一页有10条,div内的滑动条滑到一页 ...
- 如何对sharepoint图片库的文件夹的图片按照时间排序并分页显示
/// <summary> /// 获取图片库第一层文件夹--根据文件夹名称排序 /// </summary> /// <param name="siteUrl ...
- php中关于 left join 的分页显示
/* * 统计商机搜索总条数信息 * ftt * 2015-11-10 10:13:15 */ public function getBusinessCount($btype='',$buname=' ...
- 《ASP.NET1200例》<asp:DataList>分页显示图片
aspx页面代码 <asp:DataList ID="dlPhoto" runat="server" Height="137px" W ...
随机推荐
- Beginning Asp.Net Security 读书笔记-----XSS
几个月前通过Veracode对代码进行动态和静态安全扫描,扫出了数以千计的安全bug,基本上都是top 10的,安全漏洞. 其中CWE80,CWE601数量最多.具体CWE的定义可参考http://c ...
- Android 的一些中文文档
https://blog.csdn.net/qq_36467463/article/details/77990089 //安卓mediaformat api详解 https://www.cnbl ...
- C# RDLC报表不出现预览窗体直接输出到打印机
#region 直接打印区域 /// <summary> /// 直接打印到打印机 /// </summary> /// <param name="report ...
- CF1109DSasha and Interesting Fact from Graph Theory(数数)
题面 传送门 前置芝士 Prufer codes与Generalized Cayley's Formula 题解 不行了脑子已经咕咕了连这么简单的数数题都不会了-- 首先这两个特殊点到底是啥并没有影响 ...
- OWASP JUICE SHOP部分题解
本文作者:S0u1 0×00 简介 OWASP JUICE SHOP是一个开源的web应用靶场,里面包含了共记47个漏洞挑战任务,囊括了OWASP TOP 10的各个点,是一个很不错的渗透测试练手项目 ...
- windows文件名太长无法删除的解决办法
安装nodejs 的模块hexo后,由于香重新安装,在删除的时候却提示文件名太长无法删除,dos命令.回收站各种都无法搞定,后来找到解决办法: 1.进入这些文件的所在目录的上层目录,右键这些文件的所在 ...
- Elasticsearch(八)【NEST高级客户端--分析器】
分析 分析是将文本(如任何电子邮件的正文)转换为添加到反向索引中进行搜索的tokens或terms的过程. 分析由analyzer执行,分析器可以是内置分析器或每个索引定义的定制分析器. 书写分析器测 ...
- tf入门-tf.nn.conv2d是怎样实现卷积的?
转自:https://blog.csdn.net/mao_xiao_feng/article/details/78004522 实验环境:tensorflow版本1.2.0,python2.7 介绍 ...
- Word2Vec原理及代码
一.Word2Vec简介 Word2Vec 是 Google 于 2013 年开源推出的一款将词表征为实数值向量的高效工具,采用的模型有CBOW(Continuous Bag-Of-Words,连续的 ...
- VS2015编译器按F6不能够重新生成
工具-->选项-->环境-->键盘-->应用以下其他键盘映射方案,下拉选择 Visual C# 2005