c# c/s 框架的分页用户控件,还有事件
using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Data; using System.Linq; using System.Text; using System.Windows.Forms; namespace Manage { public partial class UserPageControl : UserControl { public UserPageControl() { InitializeComponent(); PageChanged = InitBut; } ; /// <summary> /// 当前页 /// </summary> [Description("当前页"), Category("分页设置")] public int CurrentPage { get { return currentPage; } set { currentPage = value; } } ;//每页显示条数 /// <summary> /// 每页显示条数 /// </summary> [Description("每页显示条数"), Category("分页设置")] public int PageSize { get { return pageSize; } set { pageSize = value; } } /// <summary> /// 总的记录数 /// </summary> private int recordCount;//总的记录数 [Description("总的记录数"), Category("分页设置")] public int RecordCount { get { return recordCount; } set { recordCount = value; } } /// <summary> /// 总共页码 /// </summary> public int CountPage { get; set; } public delegate void PageChangeDelegate(); /// <summary> /// 当前页改变时发生的事件 /// </summary> [Description("当前页改变时发生的事件"), Category("分页设置")] public event PageChangeDelegate PageChanged; /// <summary> /// 初始化数据 /// </summary> public void InitData() { CountPage = recordCount / pageSize; ) { CountPage = ; label1.Text = string.Format("共{0}条记录,每页{1}条,共{2}页/第{3}页", RecordCount, PageSize, CountPage, CurrentPage); InitBut(); return; } && recordCount % pageSize != ) { CountPage = CountPage + ; label1.Text = string.Format("共{0}条记录,每页{1}条,共{2}页/第{3}页", RecordCount, PageSize, CountPage, CurrentPage); InitBut(); return; } label1.Text = string.Format("共{0}条记录,每页{1}条,共{2}页/第{3}页", RecordCount, PageSize, CountPage, CurrentPage); InitBut(); return; } /// <summary> /// 上一页 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Prev_Click(object sender, EventArgs e) { CurrentPage--; InitData(); PageChanged(); } /// <summary> /// 下一页 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Next_Click(object sender, EventArgs e) { CurrentPage++; InitData(); PageChanged(); } public void InitBut() { //上一页是否可用 ) { Prev.Enabled = false; } else { Prev.Enabled = true; } //下一页是否可用 if (CurrentPage >= CountPage) { Next.Enabled = false; } else { Next.Enabled = true; } } } }
public partial class UserPageControl : UserControl { public UserPageControl() { InitializeComponent(); PageChanged = InitBut; } int currentPage = 1; /// <summary> /// 当前页 /// </summary> [Description("当前页"), Category("分页设置")] public int CurrentPage { get { return currentPage; } set { currentPage = value; } } int pageSize = 10;//每页显示条数 /// <summary> /// 每页显示条数 /// </summary> [Description("每页显示条数"), Category("分页设置")] public int PageSize { get { return pageSize; } set { pageSize = value; } } /// <summary> /// 总的记录数 /// </summary> private int recordCount;//总的记录数 [Description("总的记录数"), Category("分页设置")] public int RecordCount { get { return recordCount; } set { recordCount = value;
} } /// <summary> /// 总共页码 /// </summary> public int CountPage { get; set; } public delegate void PageChangeDelegate(); /// <summary> /// 当前页改变时发生的事件 /// </summary> [Description("当前页改变时发生的事件"), Category("分页设置")] public event PageChangeDelegate PageChanged;
/// <summary> /// 初始化数据 /// </summary> public void InitData() { CountPage = recordCount / pageSize; if (CountPage <= 0) { CountPage = 1; }
if (CountPage > 0 && recordCount % pageSize != 0) { CountPage = CountPage + 1; } label1.Text = string.Format("共{0}条记录,每页{1}条,共{2}页/第{3}页", RecordCount, PageSize, CountPage, CurrentPage); InitBut(); } /// <summary> /// 上一页 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Prev_Click(object sender, EventArgs e) { CurrentPage--;
InitData(); PageChanged(); } /// <summary> /// 下一页 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Next_Click(object sender, EventArgs e) { CurrentPage++;
InitData(); PageChanged(); } public void InitBut() { //上一页是否可用 if (CurrentPage <= 1) { Prev.Enabled = false; } else { Prev.Enabled = true; } //下一页是否可用 if (CurrentPage >= CountPage) { Next.Enabled = false; } else { Next.Enabled = true; }
}
}
c# c/s 框架的分页用户控件,还有事件的更多相关文章
- 【转】通用分页用户控件(DataGrid,DataList,Repeater都可以用它来分页)
通用分页控件(DataGrid,DataList,Repeater都可以用它来分页) 1.建立用户控件Pager.ascx 1.1 html </ASP:LABEL></TD> ...
- c#给用户控件添加事件处理程序
1.首先在usercontrol后台添加如下代码: public partial class MyControl: UserControl { //添加事件代理 public event ...
- C# winform中自定义用户控件 然后在页面中调用用户控件的事件
下面是用户控件的代码: using System; using System.Collections.Generic; using System.ComponentModel; using Syste ...
- C#winform窗体用户控件自定义事件
C#许多事情都和事件有关系,大部分的事情我们可以通过C#自己的事件来完成,但如果我们自己新建了一个自定义控件,我们该如何定义自己想要的事件呢?下面我就来为大家粗略的讲解一番. 假设我们自定义了一个控件 ...
- DevExpress 用户控件 分页(中)
说明: 1)具体调用请关注 看DevExpress 用户控件 分页(下) datanavi_ButtonClick 是DataNavigator的ButtonClikc事件 视图设计器: 分页用户控件 ...
- (九)ASP.NET自定义用户控件(2)
http://www.cnblogs.com/SkySoot/archive/2012/09/04/2670678.html 用户控件 在 .NET 里,可以通过两种方式把自己的控件插入到 Web 窗 ...
- 036. asp.netWeb用户控件之五使用用户控件实现分页数据导航
UserDataPager.ascx用户控件代码: <%@ Control Language="C#" AutoEventWireup="true" Co ...
- WPF MVVM 用户控件完成分页
项目中经常会有分页查询的情况,在WPF中我们可以通过用户控件完成分页 一下为分页控件的页面代码, <UserControl x:Class="Foundation.UCtrl.Next ...
- DevExpress 用户控件 分页(上)
说明:使用用户控件分页,完成后,使用时非常简单,数据绑定,调用自己写的一个事件就OK了 前期准备工作: (1)添加一个用户控件 命名PageCtrl (2)打开代码: [csharp] view ...
随机推荐
- Anaconda换源小记
如果还没有安装可以参考:https://www.cnblogs.com/dotnetcrazy/p/9158715.html 一键更新所有库:conda update --all 清华的源有时候有点小 ...
- 码农眼中的数学之~矩阵专栏(附Numpy讲解)
2.矩阵专栏¶ 吐槽一下:矩阵本身不难,但是矩阵的写作太蛋疼了 (⊙﹏⊙)汗 还好有Numpy,不然真的崩溃了... LaTex有没有一个集成了很多常用公式以及推导或者含题库的在线编辑器? 代码裤 ...
- [luogu1486][郁闷的出纳员]
题目链接 思路 这个题其实就是对于treap中的删除操作进行一些修改.自己yy了一种做法.就是在删除的时候,如果要删除的数比这棵子树的根大,那么就把根变成根的右孩子,这样就相当于删除了整棵左子树和根节 ...
- [agc016B][Colorful Hats]
题目链接 思路 首先,如果没人说谎那么序列中肯定只有一大一小两种数,假设大的数为x,小的数为y.因为对于每个人只有两种情况,要么自己与除自己外的某个人拥有相同的颜色,此时总颜色数就是这个人所能看到的颜 ...
- Django(十九)Ajax全套
参考博客:http://www.cnblogs.com/wupeiqi/articles/5703697.html 提交: - Form - Ajax 一.Ajax,偷偷向后台发请求 - XMLHtt ...
- 关于Java中扫描仪next()与nextLine()的区别
首先,next()一定要读取到有效字符后才可以结束输入,对输入有效字符之前遇到的空格键.Tab键或Enter键等结束符,next()方法会自动将其去掉,只有在输入有效字符之后,next()方法才将其后 ...
- Fiddler 只取所需
Fiddler每次打开的时候都会打开十多个会话,期望只想抓取自己想要的请求. 1)User Filters:启用过滤器 2)在Filers面板中勾选“Use Filters”,并在Hosts区域, ...
- java的线程
public class Test1 extends Thread{ public void run(){ // } } public class Test2 immplement Runnable{ ...
- Calendar 类 案例 和 闰年的计算
Calendar 类 是一个抽象类 getInstance()直接返回子类对象 直接调用 主要方法:get set add 代码如下: package cn.lijun.demo; import ja ...
- qml: 模块定义与使用
1. 模块的定义qmldir Module MyModule MyTest 1.0 MyTest.qml MyTest 1.3 MyTest.qml 2. 导入: 使用qrc: RESOU ...