- 浏览: 218285 次
- 性别:
- 来自: 武汉
文章分类
- 全部博客 (110)
- java (111)
- c# winform tablelayoutpanel学习 合并行的布局及动态增加删除内部控件 (1)
- javascript常用正则 (1)
- 认识Java程序 (1)
- UniqTask for android (1)
- JAX-RS 从傻逼到牛叉 2:开发一个简单的服务 (1)
- Spring MVC 数据绑定的扩展 (1)
- 手机分辨率 (1)
- tomcat的favicon.ico的用法 (1)
- Cookie读写demo (1)
- hive相关操作文档收集 (1)
- 测试开发工程师的发展 (1)
- JSF入门十(自定义转换器) (1)
- 《你能行:微软精英的职场心里话》 (1)
- JNI程序如何检测C代码的内存泄漏 (1)
- 做了几天的调研工作 (1)
- 使用Microsoft Web Application Stress进行压力测试 (1)
- 在线共享音乐吧(Online Share Music Bar)解决方案 (1)
- 如何二次压缩RM和RMVB格式文件 (1)
- 突然想起了红色联盟 就去看了看 (1)
- 推荐两个关于DB2认证的站点 (1)
- 安装Microsoft .NET Framework SDK 快速入门、教程和示例 (1)
- 去掉C/C++程序代码中的注释 (1)
- 数据结构之kmp模式匹配 (1)
- JS跨域 (1)
- SP2-0734: 未知的命令开头 "exp test/t..." - 忽略了剩余的行 解决办法 (1)
- Android开发之fedora13下编译Android源码 (1)
- Android开发之Linkify (1)
- json学习之三:JSONArray的应用 (1)
- js 数组操作代码集锦 (1)
- jquery跨域调用json数据 (1)
- qtdemo浅析 (1)
最新评论
-
songshuang:
最近怎么都盗我的文
做个小调查,程序员们都是什么星座的?
c# winform 实现datagridview中datagridviewcheckboxcell的变通单一勾选
- 博客分类:
- java
<p><span style="font-size: 10pt;">默认情况下 datagridviewcheckboxcolumn 是可以多选的<br>某些情况下 我们需要利用checkbox的可勾选及取消勾选的属性<br>来提供给用户选择项 同时需要勾选某项后 其他行的就取消勾选<br>如一组人员中 选择一个组长</span></p><p><span style="font-size: 10pt;">相关示例代码如下:</span></p><p><br><span style="font-size: 10pt;">//m_preroleid 之前组长的userid<br>//strcurrectchooseuserid 当前选择的组长的userid</span></p><p><span style="font-size: 10pt;">//datagridview绑定事件<br>private void initdatagridviewbind()<br>{<br> datatable dtnew = new datatable();<br> dtnew = globalstatic.gs_myws.monitorgetuseridinfo().tables[0];<br> //userid , userdesc , rolename<br> datacolumn colischecked = new datacolumn("ischecked");<br> colischecked.defaultvalue = false;<br> dtnew.columns.add(colischecked);</span></p><p><span style="font-size: 10pt;"> for (int i = 0; i < dtnew.rows.count; i++)<br> {<br> datarow dr = dtnew.rows[i];<br> if (dtnew.rows[i]["userid"].tostring() == m_preroleid)<br> {<br> dtnew.rows[i]["ischecked"] = true;<br> strcurrectchooseuserid = m_preroleid;<br> break;<br> }<br> }<br> this.datagridview1.autogeneratecolumns = false;<br> this.datagridview1.datasource = dtnew;<br>}</span></p><p><span style="font-size: 10pt;">//<br>private void <span style="color: #0000ff;">datagridview1_cellmousedown</span>(object sender, datagridviewcellmouseeventargs e)<br>{<br> if (e.columnindex != -1 && e.rowindex != -1)<br> {<br> if (((datagridviewtextboxcell)this.datagridview1.rows[e.rowindex].cells["rolename"]).value.tostring() == "组长")<br> {<br> if (((datagridviewtextboxcell)this.datagridview1.rows[e.rowindex].cells["userid"]).value.tostring() != m_preroleid)<br> {<br> messageinfoform.show("该客户端id已被其他客户端配置使用 不能再用于本客户端的配置");<br> }<br> else<br> {<br> if (e.columnindex != 0)<br> {<br> ((datagridviewcheckboxcell)this.datagridview1.rows[e.rowindex].cells["colischecked"]).value = true;//选择当前行的checkbox 并空置其他的行<br> for (int i = 0; i < this.datagridview1.rows.count; i++)<br> {<br> if (i != e.rowindex)<br> {<br> ((datagridviewcheckboxcell)this.datagridview1.rows[i].cells["colischecked"]).value = false;<br> }<br> }<br> this.datagridview1.rows[e.rowindex].selected = true;<br> strcurrectchooseuserid = ((datagridviewtextboxcell)this.datagridview1.rows[e.rowindex].cells["userid"]).value.tostring();<br> }<br> else<br> {<br> if (((datagridviewcheckboxcell)this.datagridview1.rows[e.rowindex].cells["colischecked"]).value.tostring() == "true")<br> {<br> strcurrectchooseuserid = "";<br> ((datagridviewcheckboxcell)this.datagridview1.rows[e.rowindex].cells["colischecked"]).value = false;<br> }<br> else<br> {<br> strcurrectchooseuserid = ((datagridviewtextboxcell)this.datagridview1.rows[e.rowindex].cells["userid"]).value.tostring();<br> for (int i = 0; i < this.datagridview1.rows.count; i++)<br> {<br> if (i != e.rowindex)<br> {<br> ((datagridviewcheckboxcell)this.datagridview1.rows[i].cells["colischecked"]).value = false;<br> }<br> }<br> ((datagridviewcheckboxcell)this.datagridview1.rows[e.rowindex].cells["colischecked"]).value = true;<br> }<br> }<br> }<br> }<br> else<br> {<br> if (e.columnindex != 0)<br> {<br> for (int i = 0; i < this.datagridview1.rows.count; i++)<br> {<br> if (i != e.rowindex)<br> {<br> ((datagridviewcheckboxcell)this.datagridview1.rows[i].cells["colischecked"]).value = false;<br> }<br> }<br> ((datagridviewcheckboxcell)this.datagridview1.rows[e.rowindex].cells["colischecked"]).value = true;//选择当前行的checkbox 并空置其他的行<br> this.datagridview1.rows[e.rowindex].selected = true;<br> strcurrectchooseuserid = ((datagridviewtextboxcell)this.datagridview1.rows[e.rowindex].cells["userid"]).value.tostring();<br> }<br> else<br> {<br> if (((datagridviewcheckboxcell)this.datagridview1.rows[e.rowindex].cells["colischecked"]).value.tostring() == "true")<br> {<br> strcurrectchooseuserid = "";<br> ((datagridviewcheckboxcell)this.datagridview1.rows[e.rowindex].cells["colischecked"]).value = false;<br> }<br> else<br> {<br> strcurrectchooseuserid = ((datagridviewtextboxcell)this.datagridview1.rows[e.rowindex].cells["userid"]).value.tostring();<br> for (int i = 0; i < this.datagridview1.rows.count; i++)<br> {<br> if (i != e.rowindex)<br> {<br> ((datagridviewcheckboxcell)this.datagridview1.rows[i].cells["colischecked"]).value = false;<br> }<br> }<br> ((datagridviewcheckboxcell)this.datagridview1.rows[e.rowindex].cells["colischecked"]).value = true;<br> }<br> }<br> }<br> }<br>}</span></p><p><span style="font-size: 10pt;">//上任组长显蓝色<br>//当前选择的组长显红色<br>//一般组员默认黑色<br>private void <span style="color: #0000ff;">datagridview1_cellformatting</span>(object sender, datagridviewcellformattingeventargs e)<br>{<br> if (((datagridviewtextboxcell)this.datagridview1.rows[e.rowindex].cells["rolename"]).value.tostring() == "组长")<br> {<br> if (((datagridviewtextboxcell)this.datagridview1.rows[e.rowindex].cells["userid"]).value.tostring() == m_preroleid)<br> {<br> this.datagridview1.rows[e.rowindex].cells["rolename"].style.forecolor = color.blue;<br> }<br> else<br> {<br> this.datagridview1.rows[e.rowindex].cells["rolename"].style.forecolor = color.red;<br> }<br> }<br>}</span></p>
发表评论
-
qtdemo浅析
2012-02-07 16:14 1585[size=x-small;]? ? <span ... -
jquery跨域调用json数据
2012-02-03 11:39 1435? <script type="te ... -
js 数组操作代码集锦
2012-02-03 10:59 1144[size=small;]这段时间做的一个项目,用到数 ... -
json学习之三:JSONArray的应用
2012-02-02 15:29 71524从json数组中得到 ... -
Android开发之Linkify
2012-01-31 13:33 2211<h1>Android开发之Linkify ... -
Android开发之fedora13下编译Android源码
2012-01-11 16:04 1153<h1>Android开发之fedora1 ... -
SP2-0734: 未知的命令开头 "exp test/t..." - 忽略了剩余的行 解决办法
2011-12-28 14:13 3870<span style="font-f ... -
JS跨域
2011-12-21 16:43 2638原帖地址:http://itgeeker.com/ma ... -
数据结构之kmp模式匹配
2011-12-21 10:04 1185KMP字符串模式匹配详解 KMP字符串模式匹配通俗点说 ... -
去掉C/C++程序代码中的注释
2011-12-20 16:49 3060程序员面试宝典上面的题目有很多是很经典的问题,可供我 ... -
安装Microsoft .NET Framework SDK 快速入门、教程和示例
2011-12-19 10:09 2054Microsoft .NET Framework SD ... -
推荐两个关于DB2认证的站点
2011-12-19 09:59 848关于DB2认证的在线中文教程<br>htt ... -
突然想起了红色联盟 就去看了看
2011-12-17 10:54 1181突然想起了红色联盟,于是就偷偷的爬上红盟站点,看了看红 ... -
如何二次压缩RM和RMVB格式文件
2011-12-16 17:12 1121对RM/RMVB格式文件进行二次压缩,可以用一个软件E ... -
在线共享音乐吧(Online Share Music Bar)解决方案
2011-12-14 19:54 998</span></font>& ... -
使用Microsoft Web Application Stress进行压力测试
2011-12-14 18:33 879<font size="2" ... -
做了几天的调研工作
2011-12-14 17:29 1017</span></span> ... -
JNI程序如何检测C代码的内存泄漏
2011-12-13 14:59 1448Java调用C的JNI程序很容易出现内存泄漏问题,因为 ... -
《你能行:微软精英的职场心里话》
2011-12-12 14:39 961<p class="MsoNorm ... -
JSF入门十(自定义转换器)
2011-12-09 11:00 975本文参考 http://www.javaworld.c ...
相关推荐
"基于C#的WinForm中DataGridView控件操作汇总" 在C#的WinForm中,DataGridView控件是一种常见的控件,用于显示和编辑表格数据。下面将对DataGridView控件的操作进行汇总。 一、单元格内容的操作 在DataGridView...
在C# WinForm开发中,`DataGridView`是一个非常常用的控件,用于展示表格数据。而`DataGridViewComboBoxColumn`是`DataGridView`的一个列类型,它允许用户在单元格中选择一个值,这个值通常是从下拉列表中选取。在这...
c# winform ===datagridview 单元格合并 c# winform ===datagridview 单元格合并 c# winform ===datagridview 单元格合并
C# Winform使用DataGridView的VirtualMode虚拟模式。 有两种数据类型作为DataGridView的数据源,一种是DataTable,一种是List。有不明白的,欢迎加微信交流:VPAmway。
以上就是如何在C# WinForm的`DataGridView`中实现复选框单选效果的详细步骤。通过监听事件、控制复选框状态以及合理配置`DataGridView`属性,你可以轻松地创建出满足需求的用户界面。记得在实际项目中根据具体需求...
在C# Winform开发中,`DataGridView`是一个非常重要的控件,用于展示表格数据。它提供了丰富的功能,包括数据编辑、排序、筛选等。在这个场景中,我们将关注两个特定的功能:分页和全选/取消全选。这些功能在处理...
C#winform DataGridView checkbox复选框 实现单选效果,系统默认的是界面中多选,下午没事,做个单选的效果,同时复习下datagridview的常用知识,包含dantGridVIew的常用操作内容,注意事项,代码有点乱,学习。
在C# WinForm开发中,`DataGridView`是一个常用的控件,用于展示表格数据。然而,标准的`DataGridViewTextBoxColumn`仅能支持基本的文本显示,无法直接处理HTML格式的内容。要实现`DataGridView`显示HTML内容,我们...
在C# WinForm开发中,`DataGridView`控件是一个常用的数据展示工具,它允许开发者将数据绑定到控件上,方便用户进行查看、编辑和操作。本资源主要讲解如何将集合中的对象属性绑定到`DataGridView`,从而实现数据的...
### C# Winform中DataGridView的操作 #### 概述 DataGridView 控件是Windows Forms应用程序中用于显示数据的强大工具。它能够方便地展示二维表格形式的数据,并提供了丰富的功能,如排序、筛选、编辑等。本文将...
综上所述,文档涉及了C# Winform中DataGridView控件的分页和打印功能的实现方法,包括了分页逻辑的编写、PrintDocument类的使用、以及打印机的配置和打印预览的展示。掌握了这些知识点,开发者可以为Winform应用程序...
以上就是`DataGridView`在C# WinForm中打印的实现方式。通过这些步骤,你可以轻松地将`DataGridView`的数据转换为纸质形式。在实际开发中,可能还需要根据具体需求进行优化,例如添加页眉和页脚、处理大量数据的分页...
在C# WinForm开发中,`DataGridView`是一个非常重要的控件,用于展示数据表格。它提供了丰富的功能,如数据编辑、排序、筛选等。而"DataGridView表头下拉列表"的功能,是允许用户通过表头上的下拉列表来快速筛选或...
在C# WinForm开发中,`DataGridView`是一个非常重要的控件,它用于显示表格数据,类似于Excel电子表格。然而,标准的`DataGridView`控件不直接支持多行表头,这意味着默认情况下,表头只能显示一行文字。但在某些...
在C# WinForm应用开发中,使用DataGridView控件与Access数据库进行交互是常见的数据管理方式。这个"datagridview access 数据库 c#"的示例("ComputerManage"项目)旨在教你如何实现查询、删除、添加数据以及生成...
在C# WinForm开发中,`DataGridView`控件是一个常用的数据展示工具,它允许用户查看、编辑和操作表格数据。而在这个场景下,我们关注的是如何在`DataGridView`的某一列实现一个下拉框(ComboBox),这个下拉框既能...
标题提到的“C# winform下的DataGridview分页控件源代码”正是这样一个解决方案。 首先,我们来看`Pager.Designer.cs`和`Pager.cs`这两个文件。`Designer.cs`文件通常包含Visual Studio自动生成的控件设计时元数据...
在C# WinForm应用开发中,常常需要将DataGridView中的数据导出到Excel文件,以便于数据分析、存储或共享。本文将详细介绍两种实现这一功能的方法,这两种方法都经过了实际测试,确保可行。 **方法一:使用EPPlus库*...
c# winform datagridview 中嵌套的combobox实现级联选择