### GridView_72般绝技 #### 知识点概览 本文档旨在分享与GridView控件相关的72种实用技巧。GridView是ASP.NET中一个非常强大的数据绑定控件,可以方便地展示、编辑和管理数据库中的数据。下面将详细介绍文档中提到的一些核心技巧。 #### 允许排序功能(AllowSorting) 1. **开启允许排序**: 若要启用GridView的排序功能,可以在GridView的属性设置中将`AllowSorting`属性设置为`true`。 ```xml <asp:GridView ID="GridView1" runat="server" AllowSorting="true"> ``` 这样一来,用户便可以通过点击列头来对数据进行排序。 2. **默认情况下允许排序**: 默认情况下,GridView的`AllowSorting`属性通常是关闭状态。如果希望GridView加载时就具备排序功能,则需要在代码中或标记中明确开启此选项。 #### 自定义每页显示条目数(PageSize) 1. **自定义每页显示的数据量**: GridView的`PageSize`属性用于指定每页显示的记录数量,默认值通常为10。如果希望每页显示更多或更少的记录,可以修改`PageSize`的值。 ```xml <asp:GridView ID="GridView1" runat="server" PageSize="12"> ``` 2. **动态更改PageSize**: 除了在设计时设置外,也可以在运行时通过编程方式改变`PageSize`的值。 #### 编辑、删除和更新数据 1. **编辑行**: - 使用`RowEditing`事件来处理用户的编辑请求。当用户点击编辑按钮时,会触发此事件。 ```csharp protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e) { GridView1.EditIndex = e.NewEditIndex; Bind(); } ``` 2. **删除行**: - `RowDeleting`事件处理程序用来处理删除操作。当用户确认删除某行时,会调用该方法。 ```csharp protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e) { string sqlStr = "DELETE FROM [Table] WHERE ID='" + GridView1.DataKeys[e.RowIndex].Value.ToString() + "'"; SqlConnection sqlCon = new SqlConnection(strCon); SqlCommand sqlCom = new SqlCommand(sqlStr, sqlCon); sqlCon.Open(); sqlCom.ExecuteNonQuery(); sqlCon.Close(); Bind(); } ``` 3. **更新行**: - 当用户完成对某一行的编辑后,将调用`RowUpdating`事件。此时可以获取到用户输入的新值,并更新数据库中的相应记录。 ```csharp protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e) { SqlConnection sqlCon = new SqlConnection(strCon); string sqlStr = "UPDATE [Table] SET Column1='" + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[1].Controls[0])).Text.Trim() + "', Column2='" + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[2].Controls[0])).Text.Trim() + "', Column3='" + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[3].Controls[0])).Text.Trim() + "' WHERE ID='" + GridView1.DataKeys[e.RowIndex].Value.ToString() + "'"; SqlCommand sqlCom = new SqlCommand(sqlStr, sqlCon); sqlCon.Open(); sqlCom.ExecuteNonQuery(); sqlCon.Close(); GridView1.EditIndex = -1; Bind(); } ``` 4. **取消编辑**: - 当用户决定取消编辑时,将触发`RowCancelingEdit`事件。这时应将`EditIndex`重置为-1以隐藏编辑界面。 ```csharp protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e) { GridView1.EditIndex = -1; Bind(); } ``` #### 数据绑定 1. **数据源绑定**: - GridView的数据绑定可以通过多种方式实现,如SqlDataSource、LinqDataSource等。在本例中,使用了SqlDataAdapter来进行数据填充。 ```csharp public void Bind() { string sqlStr = "SELECT * FROM [Table]"; SqlConnection sqlCon = new SqlConnection(strCon); SqlDataAdapter myDa = new SqlDataAdapter(sqlStr, sqlCon); DataSet myDs = new DataSet(); } ``` 以上内容只是GridView强大功能的一部分,通过这些技巧的掌握,可以极大地提高开发效率并优化用户体验。后续还将继续分享更多有关GridView使用的技巧和最佳实践。
- 粉丝: 29
- 资源: 3
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助