GridView72大绝技.doc_第1页
GridView72大绝技.doc_第2页
GridView72大绝技.doc_第3页
GridView72大绝技.doc_第4页
GridView72大绝技.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

GridView 72般绝技(一)GridView简介一. 数据绑定简介数据绑定就是将数据源中的数据显示到数据服务控件中。数据源可以是数据库表、数组、集合等。数据服务控件是专门用于在页面上显示数据的一种控件。我们将主要介绍GridView控件、DataList控件、Repeater控件。 所有的数据绑定都通过DataBind()函数来实现。在实现数据绑定的时候,首先要指明数据源,然后再使用DataBind()函数。 GridView1.DataSource = dataset; GridView1.DataBind();二 GridView控件简介 GridView控件是Asp.Net2003中DataGrid控件的升级版本,它提供了比DataGrid更强大的功能,同时比DataGrid更加易用。 GridView控件是一个功能强大的控件。它可以使用数据绑定技术,在数据初始化的时候绑定一个数据源,从而显示数据。除了能够显示数据外,还可以实现编辑、排序和分页等功能,而这些功能的实现有时可以不写代码或写很少的代码。三. GridView控件的属性GridView控件的属性很多,总体上可以分为分页、数据、行为、样式等几类。 1)分页:主要是设置是否分页、分页标签的显示样式、页的大小等。 2)数据:设置控件的数据源。 3)行为:主要进行一些功能性的设置,如:是否排序、是否自动产生列、是否自动产生选择删除修改按钮等。 4)样式:设置GridView控件的外观,包括选择行的样式、用于交替的行的样式、编辑行的样式、分页界面样式、脚注样式、标头样式等。 具体属性的解释参见示例演示四 . GridView控件的事件 GridView控件的事件非常丰富。当在GridView控件上操作时就会产生相应的事件。要实现的功能代码就写在相应的事件中。GridView控件的常用事件主要有: 1)PageIndexChanging:当前索引正在改变时触发。 2)RowCancelingEdit:当放弃修改数据时触发。 3)RowDeleting:当删除数据时触发。 4)RowEditing:当要编辑数据时触发。 5)RowUpdating:当保存修改的数据时触发。 6)SeletedIndexChanging:在选择新行时触发。 7)Sorting:当操作排序列进行排序时触发。 8)RowCreated:在创建行时触发。五 . GridView控件的模板列 GridView控件通过设置AutoGenerateColumns属性为true实现自动创建列,同时也可以通过模板列创建自己的列。GridView控件中主要有如下几种类型的模板列。 1)BoundField:普通绑定列。 2)CheckBoxField:复选框绑定列。 3)HyperLinkField:超连接绑定列。 4)ImageField:图片绑定列。 5)ButtonField:按钮绑定列。 6)CommandField:命令绑定列。 7)TemplateField:自定义模板绑定列。C#精髓 GridView72大绝技 学习gridview的朋友必看2011-03-16 18:18C#精髓 GridView72大绝技 学习gridview的朋友必看C#精髓 GridView72大绝技 学习gridview的朋友可以参考下。快速预览:GridView无代码分页排序GridView选中,编辑,取消,删除GridView正反双向排序GridView和下拉菜单DropDownList结合GridView和CheckBox结合鼠标移到GridView某一行时改变该行的背景色方法一鼠标移到GridView某一行时改变该行的背景色方法二GridView实现删除时弹出确认对话框GridView实现自动编号GridView实现自定义时间货币等字符串格式GridView实现用“.”代替超长字符串GridView一般换行与强制换行GridView显示隐藏某一列GridView弹出新页面/弹出新窗口GridView固定表头(不用javascript只用CSS,2行代码,很好用)GridView合并表头多重表头无错完美版(以合并3列3行举例)GridView突出显示某一单元格(例如金额低于多少,分数不及格等)GridView加入自动求和求平均值小计GridView数据导入Excel/Excel数据读入GridView1.GridView无代码分页排序:效果图:1.AllowSorting设为True,aspx代码中是AllowSorting=True;2.默认1页10条,如果要修改每页条数,修改PageSize即可,在aspx代码中是PageSize=12。3.默认的是单向排序的,右击GridView弹出“属性”,选择AllowSorting为True即可。2.GridView选中,编辑,取消,删除:效果图:后台代码:你可以使用sqlhelper,本文没用。代码如下:using System;using System.Data;using System.Configuration;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;using System.Data.SqlClient;public partial class _Default : System.Web.UI.Page/清清月儿/21aspnetSqlConnection sqlcon;SqlCommand sqlcom;string strCon = Data Source=(local);Database=数据库名;Uid=帐号;Pwd=密码;protected void Page_Load(object sender, EventArgs e)if (!IsPostBack)bind();protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)GridView1.EditIndex = e.NewEditIndex;bind();/删除protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)string sqlstr = delete from 表 where id= + GridView1.DataKeyse.RowIndex.Value.ToString() + ;sqlcon = new SqlConnection(strCon);sqlcom = new SqlCommand(sqlstr,sqlcon);sqlcon.Open();sqlcom.ExecuteNonQuery();sqlcon.Close();bind();/更新protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)sqlcon = new SqlConnection(strCon);string sqlstr = update 表 set 字段1=+ (TextBox)(GridView1.Rowse.RowIndex.Cells1.Controls0).Text.ToString().Trim() + ,字段2=+ (TextBox)(GridView1.Rowse.RowIndex.Cells2.Controls0).Text.ToString().Trim() + ,字段3=+ (TextBox)(GridView1.Rowse.RowIndex.Cells3.Controls0).Text.ToString().Trim() + where id=+ GridView1.DataKeyse.RowIndex.Value.ToString() + ;sqlcom=new SqlCommand(sqlstr,sqlcon);sqlcon.Open();sqlcom.ExecuteNonQuery();sqlcon.Close();GridView1.EditIndex = -1;bind();/取消protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)GridView1.EditIndex = -1;bind();/绑定public void bind()string sqlstr = select * from 表;sqlcon = new SqlConnection(strCon);SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);DataSet myds = new DataSet();sqlcon.Open();myda.Fill(myds, 表);GridView1.DataSource = myds;GridView1.DataKeyNames = new string id ;/主键GridView1.DataBind();sqlcon.Close();前台主要代码:. .3.GridView正反双向排序:效果图:点姓名各2次的排序,点其他也一样可以。后台代码:using System;using System.Data;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;using System.Data.SqlClient;public partial class Default3 : System.Web.UI.Page/清清月儿的博客/21aspnetSqlConnection sqlcon;string strCon = Data Source=(local);Database=北风贸易;Uid=sa;Pwd=;protected void Page_Load(object sender, EventArgs e)if (!IsPostBack)ViewStateSortOrder = 身份证号码;ViewStateOrderDire = ASC;bind();protected void GridView1_Sorting(object sender, GridViewSortEventArgs e)string sPage = e.SortExpression;if (ViewStateSortOrder.ToString() = sPage)if (ViewStateOrderDire.ToString() = Desc)ViewStateOrderDire = ASC;elseViewStateOrderDire = Desc;elseViewStateSortOrder = e.SortExpression;bind();public void bind()string sqlstr = select top 5 * from 飞狐工作室;sqlcon = new SqlConnection(strCon);SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);DataSet myds = new DataSet();sqlcon.Open();myda.Fill(myds, 飞狐工作室);DataView view = myds.Tables飞狐工作室.DefaultView;string sort = (string)ViewStateSortOrder + + (string)ViewStateOrderDire;view.Sort = sort;GridView1.DataSource = view;GridView1.DataBind();sqlcon.Close();前台主要代码:4.GridView和下拉菜单DropDownList结合:效果图:后台代码:using System;using System.Data;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;using System.Data.SqlClient;public partial class Default4 : System.Web.UI.PageSqlConnection sqlcon;string strCon = Data Source=(local);Database=北风贸易;Uid=sa;Pwd=sa;protected void Page_Load(object sender, EventArgs e)DropDownList ddl;if (!IsPostBack)string sqlstr = select top 5 * from 飞狐工作室;sqlcon = new SqlConnection(strCon);SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);DataSet myds = new DataSet();sqlcon.Open();myda.Fill(myds, 飞狐工作室);GridView1.DataSource = myds;GridView1.DataBind();for (int i = 0; i = GridView1.Rows.Count - 1; i+)DataRowView mydrv = myds.Tables飞狐工作室.DefaultViewi;if (Convert.ToString(mydrv员工性别).Trim() = True)ddl = (DropDownList)GridView1.Rowsi.FindControl(DropDownList1);ddl.SelectedIndex = 0;if (Convert.ToString(mydrv员工性别).Trim() = False)ddl = (DropDownList)GridView1.Rowsi.FindControl(DropDownList1);ddl.SelectedIndex = 1;sqlcon.Close();public SqlDataReader ddlbind()string sqlstr = select distinct 员工性别 from 飞狐工作室;sqlcon = new SqlConnection(strCon);SqlCommand sqlcom = new SqlCommand(sqlstr, sqlcon);sqlcon.Open();return sqlcom.ExecuteReader();前台主要代码:asp:DropDownList ID=DropDownList1 runat=server DataSource= DataValueField=员工性别 DataTextField=员工性别5.GridView和CheckBox结合:效果图:后台代码:using System;using System.Data;using System.Configuration;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;using System.Data.SqlClient;public partial class Default5 : System.Web.UI.Page/清清月儿/21aspnetSqlConnection sqlcon;string strCon = Data Source=(local);Database=北风贸易;Uid=sa;Pwd=sa;protected void Page_Load(object sender, EventArgs e)if (!IsPostBack)bind();protected void CheckBox2_CheckedChanged(object sender, EventArgs e)for (int i = 0; i = GridView1.Rows.Count - 1; i+)CheckBox cbox = (CheckBox)GridView1.Rowsi.FindControl(CheckBox1);if (CheckBox2.Checked = true)cbox.Checked = true;elsecbox.Checked = false;protected void Button2_Click(object sender, EventArgs e)sqlcon = new SqlConnection(strCon);SqlCommand sqlcom;for (int i = 0; i = GridView1.Rows.Count - 1; i+)CheckBox cbox = (CheckBox)GridView1.Rowsi.FindControl(CheckBox1);if (cbox.Checked = true)string sqlstr = delete from 飞狐工作室 where 身份证号码= + GridView1.DataKeysi.Value + ;sqlcom = new SqlCommand(sqlstr, sqlcon);sqlcon.Open();sqlcom.ExecuteNonQuery();sqlcon.Close();bind();protected void Button1_Click(object sender, EventArgs e)CheckBox2.Checked = false;for (int i = 0; i = GridView1.Rows.Count - 1; i+)CheckBox cbox = (CheckBox)GridView1.Rowsi.FindControl(CheckBox1);cbox.Checked = false;public void bind()string sqlstr = select top 5 * from 飞狐工作室;sqlcon = new SqlConnection(strCon);SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);DataSet myds = new DataSet();sqlcon.Open();myda.Fill(myds, tb_Member);GridView1.DataSource = myds;GridView1.DataKeyNames = new string 身份证号码 ;GridView1.DataBind();sqlcon.Close();前台主要代码:6.鼠标移到GridView某一行时改变该行的背景色方法一:效果图:做法:双击GridView的OnRowDataBound事件;在后台的GridView1_RowDataBound()方法添加代码,最后代码如下所示:protected void GridView1_RowDataBound(object sender, GridViewRowEventAr

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论