DataGridView 绝技(C#实例)
### DataGridView 绝技(C# 实例) #### 1. DataGridView无代码分页排序 - **功能概述**:此功能允许用户在不编写任何后端代码的情况下实现DataGridView的数据分页和排序。通过设置属性和监听事件,可以轻松地对显示的数据进行管理。 - **关键属性**:`AllowSorting` - 设置为`True`后,用户可以通过点击列标题来对数据进行排序。 - **分页配置**:默认情况下,每页显示10条记录。如果需要调整这个数量,可以通过设置`PageSize`属性来实现。 - **示例代码**: ```csharp protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) { GridView1.PageIndex = e.NewPageIndex; InitPage(); // 重新绑定GridView数据的方法 } ``` #### 2. GridView选中、编辑、取消和删除操作 - **功能概述**:这一部分介绍了如何实现用户对DataGridView中的数据进行选中、编辑、取消编辑以及删除的功能。 - **关键步骤**: - **选中**:用户可以通过点击行来选中数据。 - **编辑**:当用户点击编辑按钮时,DataGridView进入编辑模式。 - **取消编辑**:用户可以取消当前正在进行的编辑操作。 - **删除**:删除被选中的数据。 - **示例代码**: ```csharp 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.DataKeys[e.RowIndex].Value.ToString() + "'"; using (SqlConnection sqlcon = new SqlConnection(strCon)) using (SqlCommand sqlcom = new SqlCommand(sqlstr, sqlcon)) { sqlcon.Open(); sqlcom.ExecuteNonQuery(); sqlcon.Close(); } bind(); } ``` #### 3. DataGridView正反双向排序 - **功能概述**:除了基本的单向排序之外,还可以实现双向排序,即升序和降序。 - **实现方式**:通过监听用户点击事件,并根据当前排序状态切换排序方向。 #### 4. DataGridView与下拉菜单结合 - **功能概述**:将DataGridView与下拉菜单结合,以便用户可以根据不同的筛选条件动态地更改显示的数据。 - **实现方式**:监听下拉菜单的选择变化事件,并根据所选值重新加载DataGridView的数据。 #### 5. DataGridView与CheckBox结合 - **功能概述**:允许用户通过勾选CheckBox来选择DataGridView中的特定行。 - **实现方式**:添加CheckBox列到DataGridView,并监听CheckBox的状态变化。 #### 6. 鼠标移到GridView某一行时改变该行的背景色 - **功能概述**:为了提高用户体验,可以在鼠标悬停于某一行时改变该行的背景色。 - **实现方式**:通过CSS或JavaScript实现这一效果。 - **方法一**:使用CSS伪类`:hover`。 - **方法二**:使用JavaScript来动态改变背景色。 #### 7. DataGridView实现删除时弹出确认对话框 - **功能概述**:在执行删除操作前,向用户提供一个确认对话框,确保操作正确性。 - **实现方式**:在删除操作触发之前,使用JavaScript弹出一个确认对话框。 #### 8. DataGridView实现自动编号 - **功能概述**:为每条记录自动生成一个唯一的编号。 - **实现方式**:在绑定数据时计算行号并显示。 #### 9. DataGridView实现自定义时间、货币等字符串格式 - **功能概述**:按照特定格式显示日期、时间、货币等数据类型。 - **实现方式**:通过设置DataGridView中特定列的`DataFormatString`属性。 #### 10. DataGridView实现用“…”代替超长字符串 - **功能概述**:为了避免文本溢出,当字符串长度超过一定阈值时,使用“…”来替代超出的部分。 - **实现方式**:通过设置`ItemStyle.Width`属性和使用`Text`属性的`Trimming`特性。 #### 11. DataGridView一般换行与强制换行 - **功能概述**:根据需要,实现自动换行或强制换行。 - **实现方式**:通过设置`ItemStyle.WrapMode`属性为`Wrap`来实现自动换行;使用`<br/>`标签实现强制换行。 #### 12. DataGridView显示隐藏某一列 - **功能概述**:根据需要显示或隐藏DataGridView中的某些列。 - **实现方式**:设置`Visible`属性为`false`或`true`。 #### 13. DataGridView弹出新页面/弹出新窗口 - **功能概述**:当用户点击某一行时,可以打开一个新的页面或弹出一个新窗口。 - **实现方式**:监听点击事件,并使用JavaScript来打开新的窗口或页面。 #### 14. DataGridView固定表头(仅用CSS,无需JavaScript) - **功能概述**:使用CSS实现表头的固定,即使滚动页面,表头依然可见。 - **实现方式**:使用CSS `position: sticky` 属性。 #### 15. DataGridView合并表头多重表头无错完美版 - **功能概述**:创建复杂的表头布局,包括合并单元格等。 - **实现方式**:通过设置`MergeCells`属性,并使用`RowSpan`和`ColSpan`来合并单元格。 #### 16. DataGridView突出显示某一单元格 - **功能概述**:根据数据的特定条件,突出显示某些单元格。 - **实现方式**:使用`RowDataBound`事件,检查单元格的数据,并根据条件设置背景色或其他样式。 #### 17. DataGridView加入自动求和、求平均值等小计功能 - **功能概述**:在DataGridView底部显示统计数据,如总和、平均值等。 - **实现方式**:监听`RowDataBound`事件,统计相关数值并在指定位置显示。 #### 18. DataGridView数据导入Excel / Excel数据读入DataGridView - **功能概述**:支持将DataGridView中的数据导出到Excel文件,或将Excel文件中的数据读入DataGridView。 - **实现方式**:导出时,遍历DataGridView的数据并写入Excel文件;读取时,读取Excel文件中的数据并绑定到DataGridView。 这些技巧不仅可以帮助开发者更高效地管理数据,还能极大地提升用户的交互体验。通过这些方法的应用,可以使得基于C#和.NET开发的项目更加灵活和强大。



































剩余54页未读,继续阅读


- 粉丝: 1
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- Google 机器学习入门视频的中文字幕翻译及示例代码
- 【能源效率模糊柔性作业车间调度】基于双种群进化算法的模糊完工时间和能耗优化系统设计(含详细代码及解释)
- A176基于springboot+vue的扶贫众筹网(完整前后端代码+sql脚本+开发文档+全套软件)
- 2025年新版医院感染知识试题(含答案).docx
- 2025年新版医院感染知识试题(附含答案).docx
- 2025年新生儿科院感培训试题(附含答案).docx
- 2025年信息技术学业水平全考试测试题与答案.docx
- 2025年信息技术学业水平全考试测试题及答案.docx
- 2025年新生儿科院感培训试题(含答案).docx
- 2025年消防安全培训考试题库与解析答案.docx
- 2025年消防安全培训考试题库及解析答案.docx
- 电机控制基于移动水平估计(MHE)的永磁同步电机(PMSM)无传感器驱动系统设计与优化(含详细代码及解释)
- 2025年信息技术中考练习系统必考试题库与答案.docx
- 2025年新媒体运营专业考试必考试题及答案.docx
- 2025年新生儿护理常规试题(附含答案).docx
- 2025年消毒供应中心理论试题(附答案).docx


