DataGridViewCheckBoxColumn 如何灵活添加

xuyufeng822 2009-04-08 04:54:05
我的 dataGridView1 跟 一个表绑定了
我现在只要求第二列和第三列 是 checkbox
这个得怎么弄呢,希望能给出代码

我是先绑定了 dataGridView1
...全文
500 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuyufeng822 2009-04-10
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 LoveLife_Go 的回复:]
假如你读出来的datatable是dt


C# codeDataTable dtNew = dt.Clone();
dtNew.Columns[0].DataType = System.Type.GetType("System.Boolean");

foreach (DataRow row in dt.Rows)
{
DataRow rowNew = dtNew.NewRow();
rowNew["id"] = row["id"];
rowNew["name"] = row["name"];
dtNew.Rows.Add(rowNew);

[/Quote]

很感谢你,我弄好了,但是我还想问一个小问题,如果我这一列的某个单元格不想显示 checkbox ,这个可以实现 吗,就是设置某一单元格显示空白
xuyufeng822 2009-04-10
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 uncleson88 的回复:]
((DataGridViewCheckBoxCell)datagridview1[colindex,rowindex]).Visible = false ;
[/Quote]


提示:无法对属性或索引器 赋值 -- 它是只读的
uncleson88 2009-04-10
  • 打赏
  • 举报
回复
((DataGridViewCheckBoxCell)datagridview1[colindex,rowindex]).Visible = false ;
marssongxs 2009-04-09
  • 打赏
  • 举报
回复
Response.Write("<tr>");

Response.Write("<td><input type='checkbox' onclick='CheckChange(this)' name='ID'></td>");
Response.Write("<td><input type='checkbox' onclick='CheckChange(this)' name='ID'></td>");
Response.Write("<td</td>");
Response.Write("<td></td>");
Response.Write("<td></td>");
Response.Write("<td></td>");

Response.Write("</tr>");
这样很灵活
xuyufeng822 2009-04-09
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 LoveLife_Go 的回复:]
dt.Columns["列名"].DataType = System.Type.GetType("System.Boolean");
[/Quote]

我转换的时候出现 “在列包含数据的情况下不能更改其 DataType” 错误提示
请问这是怎么回事啊

(我的字段类型是 number,因为oracle 好像 用number 替代 bool 会好一些)
LoveLife_Go 2009-04-09
  • 打赏
  • 举报
回复
dt.Columns["列名"].DataType = System.Type.GetType("System.Boolean");
xuyufeng822 2009-04-09
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 cja03 的回复:]
改一下查询语句,把第二列和第三列转成bit型的。
这样一绑会自动变成checkbox
[/Quote]

请问 ,如何改查询语句呢,我原先的是 select * from table1

我数据库是 ORACLE,oracle中好像没有 bit 吧
LoveLife_Go 2009-04-09
  • 打赏
  • 举报
回复
如果是往里面插入checkbox列的话,是下面的代码
DataGridViewCheckBoxColumn c = new DataGridViewCheckBoxColumn();
c.HeaderText = "checkbox";
dataGridView1.Columns.Insert(1, c);
peterb 2009-04-09
  • 打赏
  • 举报
回复
Columns.Add(DataGridViewCheckBoxColumn )把原先的自动生成的列去掉;
如果数据库字段类型是bit,应该可以自动生成CheckBox列的
coolbluesky 2009-04-09
  • 打赏
  • 举报
回复
先创建两个GridViewChecBoxColumn类的实例,如下:
DataGridviewCheckBoxColumn cb1=new DataGridviewCheckBoxColumn();
//还可以设置checkbox的外观属性
cb.DisplayIndex=1;
dataGridView1.Columns.Add(cb1);
LoveLife_Go 2009-04-09
  • 打赏
  • 举报
回复
假如你读出来的datatable是dt

DataTable dtNew = dt.Clone();
dtNew.Columns[0].DataType = System.Type.GetType("System.Boolean");

foreach (DataRow row in dt.Rows)
{
DataRow rowNew = dtNew.NewRow();
rowNew["id"] = row["id"];
rowNew["name"] = row["name"];
dtNew.Rows.Add(rowNew);
}

dataGridView1.DataSource = dtNew;
xuyufeng822 2009-04-09
  • 打赏
  • 举报
回复
疯了,怎么就弄不出来了,谁能给出点代码例子吗
xuyufeng822 2009-04-09
  • 打赏
  • 举报
回复
还是没弄出来,能否给出些代码
LoveLife_Go 2009-04-09
  • 打赏
  • 举报
回复
新建表,把原表的结构克隆,修改列类型,再把原表的数据复制到新建的表,再绑定
cja03 2009-04-08
  • 打赏
  • 举报
回复
改一下查询语句,把第二列和第三列转成bit型的。
这样一绑会自动变成checkbox
guangye 2009-04-08
  • 打赏
  • 举报
回复
帮顶了....先绑定了一张表,再改不懂...关注
fdc123 2009-04-08
  • 打赏
  • 举报
回复
关注中 我也想知道DataGridViewCheckBoxColumn的用发
xuyufeng822 2009-04-08
  • 打赏
  • 举报
回复
没人来,自己顶

111,126

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧