当前位置:首页 > 代码 > 正文

winform分页代码(winform 分页)

admin 发布:2022-12-19 19:19 110


今天给各位分享winform分页代码的知识,其中也会对winform 分页进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

C#winform如何实现数据库查询并分页

使用子查询可以分页

select top 1000 * from 表 where 主键 not in

(select top (页码*1000) 主键 from 表 )

第一个*号代表所有,

第二个*号代表乘以

winform中的DataGridView如何实现分页(C#)

winfrom是应用程序 根本就不存在分页这个概念。

你只需要点击上一页 下一页 最后一页、首页 这些按钮事件里面 控制一下参数即可。‘

给你写个简单的分页语句:

select top 12 * from books where id not in(select top 12 id from books order by id) order by id

前面这个12意思是 查询前12条,后面这个12表示 不等于前12条。

合起来的意思 就是不等于前12条的前12条,也就是说 这个是第二页。

如果你想翻到第一页 后面12改为0即可。如果翻到第三页 后面12改为24.

这个很简单,不过你数据量过万 就还是考虑一下吧,这种语句效率不算很好。

winform窗体中的listview怎么实现分页,数据都读出来了,如何在显示时分页,求详细代码

namespace seperatePage

{

public partial class Form1 : Form

{

string sql;

SqlConnectionStringBuilder bldr;

SqlConnectioncn;

int totalcount = 0;//记录总共的记录数

static int page =0; //记录现在翻到第几页了

public Form1()

{

InitializeComponent();

linkDatabase();

}

public void linkDatabase()

{//连接数据库,打开连接

bldr = new SqlConnectionStringBuilder();

bldr.DataSource = "125.89.255.50";

bldr.InitialCatalog = "shortmessage";

bldr.IntegratedSecurity = false;

bldr.UserID = "shortmessage";

bldr.Password = "shortmessageuser";

cn = new SqlConnection(bldr.ConnectionString);

cn.Open(); }

public void closeDatabase()

{

//关闭连接

cn.Close();

}

public DataSet selectData(String sql)

{

//查询数据集

DataSet ds = new DataSet();

SqlDataAdapter da = new SqlDataAdapter(sql, cn);

SqlCommandBuilder cb = new SqlCommandBuilder(da);

da.Fill(ds);

return ds;

}

private void Form1_Load(object sender, EventArgs e)

{

//窗体加载的时候,前5条记录是显示的。这时候,“下一页”是可用的,“上一页”是不可用的。

nextPage.Enabled = true ;

prevPage.Enabled = false;

listView1.GridLines = false;

listView1.Columns.Add("name");

listView1.Columns.Add("age");

listView1.Columns.Add("rollno");

listView1.View =View.Details;

listView1.Items.Clear();

sql = "select * from test";

DataSet ds_one = selectData(sql);

DataTable dt_one = ds_one.Tables[0];

for (int i = 0; i dt_one.Rows.Count; i++)

{

totalcount = totalcount+1;//查看一共有多少条记录。

}

sql = "select top 5 name,age,rollno fromtest "; //显示前5条信息

DataSet ds = selectData(sql);

write_listview(ds); //这个函数的作用是用来往listview中写数据的。

}

private void next_LinkClicked(object sender,LinkLabelLinkClickedEventArgs e)

{

//当点击下一页时,上一页是可用的。

prevPage.Enabled = true;

//记录有可能是被5整除的,有可能是不能被5整除,所以判断下一页是否可用需要分情况

if (totalcount % 5 == 0)

{

if (page = totalcount / 5 - 2)

{

nextPage.Enabled = false;

prevPage.Enabled = true;

}

}

else

{

if (page = totalcount / 5 - 1)

{

nextPage.Enabled = false;

prevPage.Enabled = true;

}

}

page = page +1;

listView1.Items.Clear();

sql = "select top 5name,age,rollno from test where rollno not in (select top"+page*5+" rollno fromtest)";

DataSet ds = selectData(sql);

write_listview(ds);

}

private void linkLabel2_LinkClicked(object sender,LinkLabelLinkClickedEventArgs e)

{

nextPage.Enabled = true;

page = page -1;

if (page = 0)

{

nextPage.Enabled = true ;

prevPage.Enabled = false ;

}

listView1.Items.Clear();

sql = "select top 5name,age,rollno from test where rollno not in (select top " + page* 5 + " rollno fromtest)";

DataSet ds = selectData(sql);

write_listview(ds);

}

private void firstPage_LinkClicked(object sender,LinkLabelLinkClickedEventArgs e)

{

listView1.Items.Clear();

prevPage.Enabled = false;

nextPage.Enabled = true;

sql = "select top 5 name,age,rollno from test";

page =0;//必须要写,否则page会出现问题。

DataSet ds = selectData(sql);

write_listview(ds);

}

private void write_listview(DataSet ds)

{//用于完成向listview添加信息。

ListViewItem lv = null;

DataTable dt = ds.Tables[0];

for (int i = 0; i dt.Rows.Count; i++)

{

lv = new ListViewItem(dt.Rows[i]["name"].ToString());

lv.SubItems.Add(dt.Rows[i]["age"].ToString());

lv.SubItems.Add(dt.Rows[i]["rollno"].ToString());

listView1.Items.Add(lv);

}

}

private void lagePage_LinkClicked(object sender,LinkLabelLinkClickedEventArgs e)

{

if (totalcount % 5 == 0)

{

page = totalcount / 5 - 1;

}

else

{

page = totalcount / 5;

}

nextPage.Enabled = false;

prevPage.Enabled = true;

listView1.Items.Clear();

sql = "select top 5 name,age,rollno from test where rollno not in(select top " + page * 5 + " rollno fromtest)";

DataSet ds = selectData(sql);

write_listview(ds);

}

}

}

关于winform分页代码和winform 分页的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

标签:

版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;

本文地址:http://ahzz.com.cn/post/19971.html


取消回复欢迎 发表评论:

分享到

温馨提示

下载成功了么?或者链接失效了?

联系我们反馈

立即下载