博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
步步为营 .NET三层架构解析 八、UI的设计(GridView的设计及其分页)
阅读量:5825 次
发布时间:2019-06-18

本文共 7367 字,大约阅读时间需要 24 分钟。

这次我们设计员工操作列表Custom.aspx和部门操作列表Departmant.aspx的设计.以及如何设计GridView的分页功能.

先调用BLL设计方法获取数据的List列表,转换成PagedDataSource,再设置PagedDataSource属性来实现分页功能.

先看Custom.aspx的设计:

删除
 
当前页码为:
  总页码为:
   
第一页
上一页
 
下一页
最后一页

现来看下Custom.aspx.cs的设计:

记在先加上:

using BLL;using Model;

然后再:

public partial class Custom : PageBase{    protected void Page_Load(object sender, EventArgs e)    {        if (!Page.IsPostBack)        {            //验证权限            IsAdmin();            BinData();        }    }    ///     /// 绑定数据    ///     private void BinData()    {        customSystem CustomSystem = new customSystem();        List
Customlist = new List
(); //调用BLL方法获取列表 Customlist = CustomSystem.GetCustom(); int curpage = Convert.ToInt32(this.labPage.Text); //设计分页 PagedDataSource ps = new PagedDataSource(); ps.DataSource = Customlist; ps.AllowPaging = true; //设置页面的条数 ps.PageSize = 16; ps.CurrentPageIndex = curpage - 1; this.lnkbtnUp.Enabled = true; this.lnkbtnNext.Enabled = true; this.lnkbtnBack.Enabled = true; this.lnkbtnOne.Enabled = true; if (curpage == 1) { this.lnkbtnOne.Enabled = false; this.lnkbtnUp.Enabled = false; } if (curpage == ps.PageCount) { this.lnkbtnNext.Enabled = false; this.lnkbtnBack.Enabled = false; } this.labBackPage.Text = Convert.ToString(ps.PageCount); //绑定数据源 gvCustom.DataSource = ps; gvCustom.DataBind(); } ///
/// 删除一条数据 /// ///
///
protected void GridView_RowDeleting(object sender, GridViewDeleteEventArgs e) { int nid = Int32.Parse(gvCustom.DataKeys[e.RowIndex].Value.ToString()); customSystem CustomSystem = new customSystem(); CustomSystem.Deletecustom(nid); BinData(); } ///
/// 第一页 /// ///
///
protected void lnkbtnOne_Click(object sender, EventArgs e) { this.labPage.Text = "1"; BinData(); } ///
/// 上一页 /// ///
///
protected void lnkbtnUp_Click(object sender, EventArgs e) { this.labPage.Text = Convert.ToString(Convert.ToInt32(this.labPage.Text) - 1); BinData(); } ///
/// 下一页 /// ///
///
protected void lnkbtnNext_Click(object sender, EventArgs e) { this.labPage.Text = Convert.ToString(Convert.ToInt32(this.labPage.Text) + 1); BinData(); } ///
/// 最后一页 /// ///
///
protected void lnkbtnBack_Click(object sender, EventArgs e) { this.labPage.Text = this.labBackPage.Text; BinData(); } ///
/// 跳转到增加页面 /// ///
///
protected void btnAddUser_Click(object sender, EventArgs e) { Response.Redirect("Register.aspx"); }}
再来看下Departmant.aspx的设计:
删除
 
当前页码为:
  总页码为:
   
第一页
上一页
 
下一页
最后一页
 

然后再看Departmant.aspx.cs的设计:

也一样要先加上:

using BLL;using Model;

然后再:

public partial class departmant : PageBase{    protected void Page_Load(object sender, EventArgs e)    {        if (!Page.IsPostBack)        {            //验证权限            IsAdmin();            BinData();        }    }    ///     /// 绑定数据    ///     private void BinData()    {        departmentSystem DepartmentSystem = new departmentSystem();        List
Departmentlist = new List
(); //调用BLL方法获取列表 Departmentlist = DepartmentSystem.GetDepartment(); int curpage = Convert.ToInt32(this.labPage.Text); //设计分页 PagedDataSource ps = new PagedDataSource(); ps.DataSource = Departmentlist; ps.AllowPaging = true; //设置页面的条数 ps.PageSize = 16; ps.CurrentPageIndex = curpage - 1; this.lnkbtnUp.Enabled = true; this.lnkbtnNext.Enabled = true; this.lnkbtnBack.Enabled = true; this.lnkbtnOne.Enabled = true; if (curpage == 1) { this.lnkbtnOne.Enabled = false; this.lnkbtnUp.Enabled = false; } if (curpage == ps.PageCount) { this.lnkbtnNext.Enabled = false; this.lnkbtnBack.Enabled = false; } this.labBackPage.Text = Convert.ToString(ps.PageCount); //绑定数据源 GridView1.DataSource = ps; GridView1.DataBind(); } ///
/// 删除一条数据 /// ///
///
protected void GridView_RowDeleting(object sender, GridViewDeleteEventArgs e) { int nid = Int32.Parse(GridView1.DataKeys[e.RowIndex].Value.ToString()); departmentSystem DepartmentSystem = new departmentSystem(); DepartmentSystem.Deletedepart(nid); BinData(); } ///
/// 第一页 /// ///
///
protected void lnkbtnOne_Click(object sender, EventArgs e) { this.labPage.Text = "1"; BinData(); } ///
/// 上一页 /// ///
///
protected void lnkbtnUp_Click(object sender, EventArgs e) { this.labPage.Text = Convert.ToString(Convert.ToInt32(this.labPage.Text) - 1); BinData(); } ///
/// 下一页 /// ///
///
protected void lnkbtnNext_Click(object sender, EventArgs e) { this.labPage.Text = Convert.ToString(Convert.ToInt32(this.labPage.Text) + 1); BinData(); } ///
/// 最后一页 /// ///
///
protected void lnkbtnBack_Click(object sender, EventArgs e) { this.labPage.Text = this.labBackPage.Text; BinData(); } ///
/// 跳转到增加页面 /// ///
///
protected void btnAddDepartment_Click(object sender, EventArgs e) { Response.Redirect("ADDdepart.aspx"); }}
到这里我们一个简单的三层架构的应用就设计完了,可能权限的设计有点薄弱,改天我再专门讲解下权限的设计,感谢大家一直以来对我关注和支持,同时也感谢大家的拍砖.

下次我会做下这个系列的导航出来,并公布源码.欢迎继续拍砖.

转载于:https://www.cnblogs.com/springyangwc/archive/2011/03/28/1998095.html

你可能感兴趣的文章
数据分析相关
查看>>
Python LDAP中的时间戳转换为Linux下时间
查看>>
微信小程序蓝牙连接小票打印机
查看>>
环境错误2
查看>>
C++_了解虚函数的概念
查看>>
全新jmeter视频已经上架
查看>>
Windows 8下如何删除无线配置文件
查看>>
解决Windows 7中文件关联和打开方式
查看>>
oracle系列(五)高级DBA必知的Oracle的备份与恢复(全录收集)
查看>>
hp 服务器通过串口重定向功能的使用
查看>>
国外10大IT网站和博客网站
查看>>
android第十一期 - SmoothSwitchLibrary仿IOS切换Activity动画效果
查看>>
zabbix 批量web url监控
查看>>
MongoDB CookBook读书笔记之导入导出
查看>>
shell如何快速锁定所有账号
查看>>
HTML 5实现的手机摇一摇
查看>>
Linux 文件IO理解
查看>>
Ninject 2.x细说---2.绑定和作用域
查看>>
30个非常时尚的网页联系表单设计优秀示例
查看>>
使用membership(System.Web.Security)来进行角色与权限管理
查看>>