GridView用法
public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { this.BindToGridView(); } } //定义绑定 private void BindToGridView() { SqlConnection conn = DB.Createconn(); conn.Open(); SqlDataAdapter sda = new SqlDataAdapter(); sda.SelectCommand = new SqlCommand("select * from newstype order by typeID", conn); DataSet ds = new DataSet(); sda.Fill(ds, "newstype"); this.GridView1.DataKeyNames = new string[] { "typeid" }; this.GridView1.DataSource = ds.Tables["newstype"]; this.GridView1.DataBind(); conn.Close(); } //添加记录 protected void btnAdd_Click(object sender, EventArgs e) { SqlConnection conn = DB.Createconn(); conn.Open(); SqlCommand cmd = new SqlCommand("insert into newsType(typeName) values(\'"+this.txtTypeName.Text+"\')",conn); cmd.ExecuteNonQuery(); conn.Close(); this.txtTypeName.Text = ""; this.BindToGridView(); } //分页 protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) { this.GridView1.PageIndex = e.NewPageIndex; this.BindToGridView(); } //编辑记录 protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e) { this.GridView1.EditIndex = e.NewEditIndex; this.BindToGridView(); } //更新记录 protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e) { TextBox tb = (TextBox)GridView1.Rows[e.RowIndex].FindControl("TextBox1"); string typeId = this.GridView1.DataKeys[e.RowIndex].Values[0].ToString(); SqlConnection conn = DB.Createconn(); conn.Open(); SqlCommand cmd = new SqlCommand("update newstype set typeName=\'"+tb.Text+"\' where typeid=" + typeId, conn); cmd.ExecuteNonQuery(); conn.Close(); this.GridView1.EditIndex = -1; this.BindToGridView(); } //删除记录 protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e) { string typeId = this.GridView1.DataKeys[e.RowIndex].Values[0].ToString(); SqlConnection conn = DB.Createconn(); conn.Open(); SqlCommand cmd = new SqlCommand("delete from newstype where typeid="+typeId, conn); cmd.ExecuteNonQuery(); conn.Close(); this.BindToGridView(); } //编辑时的取消 protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e) { this.GridView1.EditIndex = -1; this.BindToGridView(); } //排序处理程序 protected void GridView1_Sorting(object sender, GridViewSortEventArgs e) { string sortExpression = e.SortExpression; if (GridViewSortDirection == SortDirection.Ascending) { GridViewSortDirection = SortDirection.Descending; SortGridView(sortExpression, "DESC"); } else { GridViewSortDirection = SortDirection.Ascending; SortGridView(sortExpression, "ASC"); } } //存储选定列当前排序状态 public SortDirection GridViewSortDirection { get { if (ViewState["sortDirection"] == null) ViewState["sortDirection"] = SortDirection.Ascending; return (SortDirection)ViewState["sortDirection"]; } set { ViewState["sortDirection"] = value; } } /// 排序并绑定 private void SortGridView(string sortExpression, string direction) { SqlConnection conn = DB.Createconn(); conn.Open(); SqlDataAdapter sda = new SqlDataAdapter(); sda.SelectCommand = new SqlCommand("select * from newstype order by typeID", conn); DataSet ds = new DataSet(); sda.Fill(ds, "newstype"); DataTable dt = ds.Tables["newstype"]; DataView dv = new DataView(dt); dv.Sort = sortExpression + " " + direction; GridView1.DataSource = dv; GridView1.DataBind(); conn.Close(); } //删除加确认 protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { e.Row.Cells[3].Attributes.Add("onclick","Javascript:return confirm(\'确认删除\\""+e.Row.Cells[1].Text+"\\"吗?\')"); } } } |
-- 作者:wxhui -- 发布时间:2006-12-20 14:51:25 -- ///定义变量 private String newsTypeId; //定义属性 public string NewsTypeID { set{ //赋值 this.newTypeId=value; } } |
-- 作者:wxhui -- 发布时间:2007-1-27 14:48:24 -- GRIDVIEW 绑定字段格式显示问题 在GRIDVIEW中的绑定字段我要显示它的前10个字符,该怎么处理阿? 答案: 1、<%# Convert.ToBoolean(Eval("sex")) ? "男" : "女" %> |
-- 作者:wxhui -- 发布时间:2007-1-27 15:08:57 -- DataFormatString 设AutoGenColumns为False,将DataField设为相关字段,然后设置DataFormatString DataFormatString 属性语法如下: DataFormatString="{0:格式字符串}" 我们知道在DataFormatString 中的 {0} 表示数据本身,而在冒号后面的格式字符串代表所们希望数据显示的格式;另外在指定的格式符号后可以指定小数所要显示的位数。例如原来的数据为 「1.56」,若格式设定为 {0:N1},则输出为「1.5」。其常用的数值格式如下表所示: 格式字符串 输入 结果 "{0:C}" 12345.6789 $12,345.68 "{0:C}" -12345.6789 ($12,345.68) "{0:D}" 12345 12345 "{0:D8}" 12345 00012345 "{0:E}" 12345.6789 1234568E+004 "{0:E10}" 12345.6789 1.2345678900E+004 "{0:F}" 12345.6789 12345.68 "{0:F0}" 12345.6789 12346 "{0:G}" 12345.6789 12345.6789 "{0:G7}" 123456789 1.234568E8 "{0:N}" 12345.6789 12,345.68 "{0:N4}" 123456789 123,456,789.0000 "Total: {0:C}" 12345.6789 Total: $12345.68 其常用的日期格式如下表所示: 格式 说明 输出格式 d 精简日期格式 MM/dd/yyyy D 详细日期格式 dddd, MMMM dd, yyyy f 完整格式 (long date + short time) dddd, MMMM dd, yyyy HH:mm F 完整日期时间格式 (long date + long time) dddd, MMMM dd, yyyy HH:mm:ss g 一般格式 (short date + short time) MM/dd/yyyy HH:mm G 一般格式 (short date + long time) MM/dd/yyyy HH:mm:ss m,M 月日格式 MMMM dd s 适中日期时间格式 yyyy-MM-dd HH:mm:ss t 精简时间格式 HH:mm T 详细时间格式 HH:mm:ss |
-- 作者:wxhui -- 发布时间:2007-2-1 16:31:18 -- 鼠标移上的事件的添加 protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) { { if (e.Row.RowType == DataControlRowType.DataRow) { e.Row.Attributes.Add("onclick", "window.open(\'detail.aspx?id=" + e.Row.Cells[0].Text + "\');"); e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=\\"" + e.Row.Style["BACKGROUND-COLOR"] + "\\""); e.Row.Attributes.Add("onmouseover", "this.style.backgroundColor=\\"" + "#EFF3F7" + "\\""); } } } |
-- 作者:wxhui -- 发布时间:2007-2-2 11:48:13 -- 如何在gridview中每10行记录后增加一个空行 protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowIndex >0 && (e.Row.RowIndex+1) % 10 == 0) { GridViewRow newRow = new GridViewRow(0, 0, DataControlRowType.DataRow, DataControlRowState.Normal); newRow.Cells.Add(new TableCell()); newRow.Cells[0].ColumnSpan = e.Row.Cells.Count; newRow.Cells[0].Text = " "; this.GridView1.Controls[0].Controls.Add(newRow); } } |
-- 作者:wxhui -- 发布时间:2007-2-3 13:40:18 -- gridview 常用方法合集 在项目中主要用了gridview来显示数据,其中的方法都是常用的。 1、利用sqldatasource动态邦定数据,其中sqldatasource1是托放在页面的sqldatasource控件,将数据邦定到gridview1上面 void gridviewband() {
try { SqlDataSource1.ConnectionString = ConfigurationSettings.AppSettings["sqlconn"]; SqlDataSource1.SelectCommand = squerysql; GridView1.DataSource = SqlDataSource1; GridView1.DataBind(); //看有没有数据 如果没有数据 提示错误 lblresult的text的内容是错误信息 int count = GridView1.Rows.Count; if (count == 0) { lblresult.Visible = true; } else { lblresult.Visible = false; } } catch (SqlException ex5) { //提示错误信息 } finally { } } 2、选择一行,获取关键字,然后传到其他页面 protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{//选择某一行 Session["selectkey"] = GridView1.SelectedDataKey.Value; Response.Redirect("~/employee/employeedetail.aspx"); } 3、获取编辑行的关键字 protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{ //编辑修改 Session["editkey"] = GridView1.DataKeys[e.NewEditIndex].Value.ToString(); Response.Redirect("~/employee/employeeedit.aspx"); } 4、删除一行,获取关键字。这个地方还是用rowdeleting 事件。 protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
{ String idno111 = GridView1.DataKeys[e.RowIndex].Value.ToString(); SqlDataSource1.DeleteCommand = "delete from empinfo where empnum=\'" + idno111 + "\'" + "delete from employee where empnum=\'" + idno111 + "\'"; //删除行 if (e.RowIndex >= 0) { String connectstr = ConfigurationSettings.AppSettings["sqlconn"]; SqlConnection sqlconn = new SqlConnection(connectstr); sqlconn.Open(); SqlCommand comm = new SqlCommand(SqlDataSource1.DeleteCommand, sqlconn); comm.ExecuteNonQuery(); sqlconn.Close(); } } 5、删除前提示关键字,不仅仅是提示“确认删除吗?” 而是提示“确认删除关键字是***的数据吗?” 首先在aspx文件脚本里面要设置 重要看的是gridview的标签里面要有 DatakeyNames="关键字" 同时 CommandArgument=\'<%# Eval("departno") %>\' 这两处要填写 <asp:GridView ID="GridView1" runat="server" AllowPaging="True" AutoGenerateColumns="False"
CellPadding="4" DataKeyNames="departno" DataSourceID="SqlDataSource1" ForeColor="#333333" GridLines="None" OnDataBound="CustomersGridView_DataBound" OnRowDeleting="GridView1_RowDeleting" OnRowEditing="GridView1_RowEditing" OnSelectedIndexChanged="GridView1_SelectedIndexChanged" PageSize="15" Width="800px" OnRowDataBound="GridView1_RowDataBound"> <FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" /> <Columns> <asp:BoundField DataField="departno" HeaderText="部门编号" SortExpression="departno" /> <asp:BoundField DataField="father" HeaderText="父级部门" SortExpression="father" /> <asp:BoundField DataField="departname" HeaderText="部门名称" SortExpression="departname" /> <asp:BoundField DataField="person" HeaderText="联系人" SortExpression="person" /> <asp:BoundField DataField="tel" HeaderText="固定电话" SortExpression="tel" /> <asp:BoundField DataField="mobiletel" HeaderText="手机" SortExpression="mobiletel" /> <asp:CommandField ButtonType="Image" HeaderText="查看" SelectImageUrl="~/icons/look.gif" SelectText="查看" ShowSelectButton="True"> <HeaderStyle HorizontalAlign="Center" /> <ItemStyle HorizontalAlign="Center" /> </asp:CommandField> <asp:CommandField ButtonType="Image" EditImageUrl="~/icons/edit.gif" EditText="编辑" HeaderText="编辑" ShowEditButton="True"> <HeaderStyle HorizontalAlign="Center" /> <ItemStyle HorizontalAlign="Center" /> </asp:CommandField> <asp:TemplateField HeaderText="删除" ShowHeader="False"> <ItemStyle HorizontalAlign="Center" /> <HeaderStyle HorizontalAlign="Center" /> <ItemTemplate> <asp:ImageButton ID="ImageButton1" runat="server" CausesValidation="False" CommandName="Delete" ImageUrl="~/icons/delete.gif" CommandArgument=\'<%# Eval("departno") %>\' Text="删除" /> </ItemTemplate> </asp:TemplateField> </Columns> <PagerTemplate> <table width="100%"> <tr> <td width="70%"> <asp:Label ID="MessageLabel" runat="server" Font-Size="Larger" ForeColor="Black" Text="页码:"></asp:Label> <asp:DropDownList ID="PageDropDownList" runat="server" AutoPostBack="true" OnSelectedIndexChanged="PageDropDownList_SelectedIndexChanged"> </asp:DropDownList> <asp:LinkButton ID="linkBtnFirst" runat="server" CommandArgument="First" CommandName="Page" ForeColor="Black">首页</asp:LinkButton> <asp:LinkButton ID="linkBtnPrev" runat="server" CommandArgument="Prev" CommandName="Page" ForeColor="Black">上一页</asp:LinkButton> <asp:LinkButton ID="linkBtnNext" runat="server" CommandArgument="Next" CommandName="Page" ForeColor="Black">下一页</asp:LinkButton> <asp:LinkButton ID="linkBtnLast" runat="server" CommandArgument="Last" CommandName="Page" ForeColor="Black">末页</asp:LinkButton> </td> <td align="right" width="70%"> <asp:Label ID="CurrentPageLabel" runat="server" ForeColor="black"></asp:Label> </td> </tr> </table> </PagerTemplate> <RowStyle BackColor="#EFF3FB" /> <EditRowStyle BackColor="#2461BF" /> <SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" /> <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" /> <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" /> <AlternatingRowStyle BackColor="White" /> </asp:GridView> 然后在cs页面里填入事件: //删除某一行的时候要提示关键字 不仅是提示确认删除,departno是关键字
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { ImageButton l = (ImageButton)e.Row.FindControl("ImageButton1"); l.Attributes.Add("onclick", "javascript:return " + "confirm(\'确认要删除部门编号为 " + DataBinder.Eval(e.Row.DataItem, "departno") + " 的部门吗?" + "\')"); } } }
|
-- 作者:wxhui -- 发布时间:2007-2-3 13:40:40 -- 6、显示页码 <PagerTemplate>
<table width="100%"> <tr> <td width="70%"> <asp:Label ID="MessageLabel" runat="server" Font-Size="Larger" ForeColor="Black" Text="页码:"></asp:Label> <asp:DropDownList ID="PageDropDownList" runat="server" AutoPostBack="true" OnSelectedIndexChanged="PageDropDownList_SelectedIndexChanged"> </asp:DropDownList> <asp:LinkButton ID="linkBtnFirst" runat="server" CommandArgument="First" CommandName="Page" ForeColor="Black">首页</asp:LinkButton> <asp:LinkButton ID="linkBtnPrev" runat="server" CommandArgument="Prev" CommandName="Page" ForeColor="Black">上一页</asp:LinkButton> <asp:LinkButton ID="linkBtnNext" runat="server" CommandArgument="Next" CommandName="Page" ForeColor="Black">下一页</asp:LinkButton> <asp:LinkButton ID="linkBtnLast" runat="server" CommandArgument="Last" CommandName="Page" ForeColor="Black">末页</asp:LinkButton> </td> <td align="right" width="70%"> <asp:Label ID="CurrentPageLabel" runat="server" ForeColor="black"></asp:Label> </td> </tr> </table> </PagerTemplate> 然后在gridview的标签里面填入 OnDataBound="CustomersGridView_DataBound"
位置看 5 的代码就可以了。 //显示页码
protected void PageDropDownList_SelectedIndexChanged(Object sender, EventArgs e) { GridViewRow pagerRow = GridView1.BottomPagerRow; DropDownList pageList = (DropDownList)pagerRow.Cells[0].FindControl("PageDropDownList"); GridView1.PageIndex = pageList.SelectedIndex; } protected void CustomersGridView_DataBound(Object sender, EventArgs e) { try { GridViewRow pagerRow = GridView1.BottomPagerRow; LinkButton linkBtnFirst = (LinkButton)pagerRow.Cells[0].FindControl("linkBtnFirst"); LinkButton linkBtnPrev = (LinkButton)pagerRow.Cells[0].FindControl("linkBtnPrev"); LinkButton linkBtnNext = (LinkButton)pagerRow.Cells[0].FindControl("linkBtnNext"); LinkButton linkBtnLast = (LinkButton)pagerRow.Cells[0].FindControl("linkBtnLast"); if (GridView1.PageIndex == 0) { linkBtnFirst.Enabled = false; linkBtnPrev.Enabled = false; } else if (GridView1.PageIndex == GridView1.PageCount - 1) { linkBtnLast.Enabled = false; linkBtnNext.Enabled = false; } else if (GridView1.PageCount <= 0) { linkBtnFirst.Enabled = false; linkBtnPrev.Enabled = false; linkBtnNext.Enabled = false; linkBtnLast.Enabled = false; } DropDownList pageList = (DropDownList)pagerRow.Cells[0].FindControl("PageDropDownList"); Label pageLabel = (Label)pagerRow.Cells[0].FindControl("CurrentPageLabel"); if (pageList != null) { for (int i = 0; i < GridView1.PageCount; i++) { int pageNumber = i + 1; ListItem item = new ListItem(pageNumber.ToString() + "/" + GridView1.PageCount.ToString(), pageNumber.ToString()); if (i == GridView1.PageIndex) { item.Selected = true; } pageList.Items.Add(item); } } if (pageLabel != null) { int currentPage = GridView1.PageIndex + 1; pageLabel.Text = "当前页: " + currentPage.ToString() + " / " + GridView1.PageCount.ToString(); } } catch { Response.Write("现在还没有该部门的记录!!"); } } 如果发生异常,是应为没有数据。这时候可以在catch里面提示没有数据。这样就可以绑定页码了。 protected void PageDropDownList_SelectedIndexChanged(Object sender, EventArgs e)
{ GridViewRow pagerRow = GridView1.BottomPagerRow; DropDownList pageList = (DropDownList)pagerRow.Cells[0].FindControl("PageDropDownList"); GridView1.PageIndex = pageList.SelectedIndex; gridviewband();///重新绑定数据,这是特殊的地方 } protected void CustomersGridView_DataBound(Object sender, EventArgs e) { try { GridViewRow pagerRow = GridView1.BottomPagerRow; LinkButton linkBtnFirst = (LinkButton)pagerRow.Cells[0].FindControl("linkBtnFirst"); LinkButton linkBtnPrev = (LinkButton)pagerRow.Cells[0].FindControl("linkBtnPrev"); LinkButton linkBtnNext = (LinkButton)pagerRow.Cells[0].FindControl("linkBtnNext"); LinkButton linkBtnLast = (LinkButton)pagerRow.Cells[0].FindControl("linkBtnLast"); if (GridView1.PageIndex == 0) { linkBtnFirst.Enabled = false; linkBtnPrev.Enabled = false; } else if (GridView1.PageIndex == GridView1.PageCount - 1) { linkBtnLast.Enabled = false; linkBtnNext.Enabled = false; } else if (GridView1.PageCount <= 0) { linkBtnFirst.Enabled = false; linkBtnPrev.Enabled = false; linkBtnNext.Enabled = false; linkBtnLast.Enabled = false; } DropDownList pageList = (DropDownList)pagerRow.Cells[0].FindControl("PageDropDownList"); Label pageLabel = (Label)pagerRow.Cells[0].FindControl("CurrentPageLabel"); if (pageList != null) { for (int i = 0; i < GridView1.PageCount; i++) { int pageNumber = i + 1; ListItem item = new ListItem(pageNumber.ToString() + "/" + GridView1.PageCount.ToString(), pageNumber.ToString()); if (i == GridView1.PageIndex) { item.Selected = true; } pageList.Items.Add(item); } } if (pageLabel != null) { int currentPage = GridView1.PageIndex + 1; pageLabel.Text = "当前页: " + currentPage.ToString() + " / " + GridView1.PageCount.ToString(); } } catch //(Exception ex5) { Response.Write("现在还没有该部门的记录!!"); } } protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) { GridView1.PageIndex = e.NewPageIndex; gridviewband();//重新绑定数据 } 这样就可以显示了 如果按照前面的方法会提示没有 pageindexchanging事件。 |
-- 作者:wxhui -- 发布时间:2007-5-22 14:38:20 -- ASP.NET中GridView的自定义分页 在ASP.NET 2.0种提供了GridView控件。该控件的分页比较方便,可以通过在Visual Studio .NET 2005种简单设置即可实现各种分页功能。 1. 默认分页方式(1) 是否允许分页GridView的AllowPaging属性。 (2) 每页记录数GridView的PageSize (3) 分页导航条形式GridView的PagerSettings属性的Mode:Numeric,NextPrevious,NextPreviousFirstLast,NumericFirstLast。 2. 自定义分页(1) 当前页<asp:Label ID="LabelCurrentPage" runat="server" (2) 总页数<asp:Label ID="LabelPageCount" runat="server" (3) 首页、上一页、下一页、尾页<asp:LinkButton ID="LinkButtonFirstPage" runat="server" CommandArgument="First" CommandName="Page" <asp:LinkButton ID="LinkButtonPreviousPage" runat="server" CommandArgument="Prev" CommandName="Page" <asp:LinkButton ID="LinkButtonNextPage" runat="server" CommandArgument="Next" CommandName="Page" <asp:LinkButton ID="LinkButtonLastPage" runat="server" CommandArgument="Last" CommandName="Page" |
-- 作者:wxhui -- 发布时间:2007-5-22 14:39:53 -- 关于GridView中自定义分页、单选、多选、排序、自增列的简单应用
简单示例,代码如下, |
-- 作者:wxhui -- 发布时间:2007-5-22 14:40:25 -- fenpage.aspx.cs的代码: 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 gridview_fenpage : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { Button2.Attributes["onclick"] = "return slcNo_click();"; GridViewBind(""); } private void GridViewBind(string Sqlsort) { string connStr = ConfigurationManager.ConnectionStrings["ConnString1"].ConnectionString; string SqlStr = "SELECT * FROM test01 where id<1000" + Sqlsort; DataSet ds = new DataSet(); try { SqlConnection conn = new SqlConnection(connStr); if (conn.State.ToString() == "Closed") conn.Open(); SqlDataAdapter da = new SqlDataAdapter(SqlStr, conn); da.Fill(ds, "test01"); if (conn.State.ToString() == "Open") conn.Close(); GridView1.DataSource = ds.Tables[0].DefaultView; GridView1.DataBind(); LblCurrentIndex.Text = "第 " + (GridView1.PageIndex + 1).ToString() + " 页"; LblPageCount.Text = "共 " + GridView1 .PageCount.ToString()+ " 页"; LblRecordCount.Text = "总共 "+ds.Tables[0].Rows.Count.ToString()+" 条"; if (ds.Tables[0].Rows.Count == 0) { btnFirst.Visible = false; btnPrev.Visible = false; btnNext.Visible = false; btnLast.Visible = false; LblCurrentIndex.Visible = false; LblPageCount.Visible = false; LblRecordCount.Visible = false; } else if (GridView1.PageCount == 1) { btnFirst.Visible = false; btnPrev.Visible = false; btnNext.Visible = false; btnLast.Visible = false; } // 计算生成分页页码,分别为:"首 页" "上一页" "下一页" "尾 页" btnFirst.CommandName = "1"; btnPrev.CommandName = (GridView1.PageIndex == 0 ? "1" : GridView1.PageIndex.ToString()); btnNext.CommandName = (GridView1.PageCount == 1 ? GridView1.PageCount.ToString() : (GridView1.PageIndex + 2).ToString()); btnLast.CommandName = GridView1.PageCount.ToString(); // } catch(Exception ex) { Response.Write("数据库错误,错误原因:"+ex.Message); Response.End(); } } protected void PagerButtonClick(object sender, EventArgs e) { GridView1.PageIndex = Convert.ToInt32(((LinkButton)sender).CommandName)-1; GridViewBind(""); } protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) { e.Row.Attributes["onmouseover"] = "ItemOver(this)"; } protected void Button2_Click(object sender, EventArgs e) { string str=""; string []ckb=null; str=Request.Form.Get("checkboxname"); ckb=str.Split(new char[]{\',\'}); Response.Write("直接在页面中得到的值为:"+str+"<br>"); Response.Write("处理后存放在数组中,如下:<br>"); for(int i=0;i<ckb.Length;i++) { Response.Write("ckb["+i+"]的值为:"+ckb[i]+"<br>"); } } protected void Button1_Click(object sender, EventArgs e) { Response.Write(Request.Form.Get("RadioName")); } protected void GridView1_Sorting(object sender, GridViewSortEventArgs e) { string sql = ""; if (ViewState["SortDirection"] == null || ViewState["SortDirection"].ToString().CompareTo("") == 0) { ViewState["SortDirection"] = " desc"; } else ViewState["SortDirection"] = ""; sql = " order by " + e.SortExpression + ViewState["SortDirection"]; GridViewBind(sql); } } 数据库中表的生成代码: CREATE TABLE [dbo].[test01] ( [id] [decimal](18, 0) IDENTITY (1, 1) NOT NULL , [name] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL , [card] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL , [createdate] [datetime] NULL ) ON [PRIMARY] GO ALTER TABLE [dbo].[test01] ADD CONSTRAINT [DF_test01_createdate] DEFAULT (getdate()) FOR [createdate], CONSTRAINT [PK_test01] PRIMARY KEY CLUSTERED ( [id] ) ON [PRIMARY] GO |