日期:2014-05-19  浏览次数:20971 次

DataGridView绑定列的时候,怎么根据数据库中的True和False显示"正确"或"不正确"?
RT,高手请指点一下,谢谢!!

------解决方案--------------------
我在ItemDataBound事情里作判断,一个隐藏列邦定数据库“True or False”,一个显示列显示结果“正确or不正确”。也可转成模板列来做。
------解决方案--------------------
如果仅仅作为数据展示的话,可以在SQL查询里把数据转化;
SELECT
CASE 字段
WHEN 'TRUE ' THEN '正确 '
ELSE '不正确 '
END AS '是否正确 '
FROM 表
WHERE ...
------解决方案--------------------
我用得比较笨的方法:
比如,获得数据源的DataSet 为 ds则:
foreach(DataRow dr in ds.Tables[0].Row)
{
dr.BeginEdit();
if(dr[ "col "].ToString().ToLower()== "true ")
{
dr[ "col "]= "正确 "
}
else
{
dr[ "col "]= "错误 ";
}
dr.Accept();
dr.EndEdit()
}

然后再绑定数据源即可


}
------解决方案--------------------
不太懂得楼主 要什么结果?
------解决方案--------------------
不要修改DataGridView绑上的.
在BIDN之前修改数据源的
------解决方案--------------------
我有一次用过checkbox来选择。。选中的话就是true否则false

------解决方案--------------------
datagridview里面可以添加自定义的列。。把格式换为checkbox。。。

------解决方案--------------------
if(dr[ "col "].ToString().ToLower()== "true ")
{
dr[ "col "]= "正确 "
}
else
{
dr[ "col "]= "错误 ";
}

------解决方案--------------------
在模板列中使用CHECKBOX
绑定时也可以用 ? :
------解决方案--------------------
如果你在绑定前去判断,如果为true的话你就让他显示正确,反之...
修改后你就再去绑定,这样就ok了....
------解决方案--------------------
你拖上去一个datagridview,在collection里面不时可以自定义列吗?你在添加的时候 把这个列的类型选择为datagridcheckboxcolumn.然后这个列,就是选择和非选择的意思了。。

不知道我这个意思是否完全符合搂主的意思。。有错望海涵
------解决方案--------------------
给DataGridView添加如下的事件就可以了:
private void dataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
if (e.Value is bool)
{
if ((bool)e.Value)
{
e.Value = "正确 ";
}
else
{
e.Value = "错误 ";
}
}
}
------解决方案--------------------
难道我刚才说的方法没效吗???

如果你在绑定前去判断,如果为true的话你就让他显示正确,反之...
修改后你就再去绑定,这样就ok了....
------解决方案--------------------
不好意思,我的代码是会报错。
楼主可以使用Select语句的Case转一下。

如果愿意,也可以处理Cellpaint事件来绘制文本。但是DataGridview可能没有更合适的方法。
------解决方案--------------------
也可以先绑定了,然后写个循环如果是true就写成正确,反之