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

WinFrom datagridview 的简单问题
WinFrom   datagridview   中相当于webform   datagridview   的DataBount事件是哪个呢,找半天没找到,有个CollectionChanged,但双击不起作用,请问怎么处理,谢谢

------解决方案--------------------
DataBount事件?是不是在数据绑定的同时做些其它事情?

我经常用CellFormatting(如:根据不同的值改变网格背景色)和RowEnter(如:根据某几列值做其它操作)事件
------解决方案--------------------
试试CollectionChanging
------解决方案--------------------
WinFrom datagridview 没有也不需要DataBount事件,只要为datagridview 指定DataSource即可,不需要再绑定了
------解决方案--------------------
.---- -. -. . . .
( . ',----- - - ' '
\_/ ;--:- __-----天山寒雪 -----___ ____=====
__U__n_^_ ' '__[. ooo___ | |_!_||_!_||_!_||_!_| | |..|_i_|.
c(_ ..(_ ..(_ ..( /,,,,,,] | |___||___||___||___| | |
,_\___________ '_|,L______],|______________________|_i,!________
/;_(@)(@)==(@)(@) (o)(o) (o)^(o)--(o)^(o) (o)(o)
=========
直接操作 数据库 不是 更方便吗 ?

FSex=CASE WHEN FSex=0 THEN '男 ' ELSE '女 ' END
------解决方案--------------------
你是不是 觉得 读取 XML 文件非常 复杂啊 ?

ds.ReadXml(); 几秒中就 转换成记录集了

然后 遍历记录 集 将 数字转换成 你要的 汉字.格式


for (int i = 0; i < dataGridView1.Rows.Count; i++)
{

switch (Int32.Parse(dataGridView1.Rows[i].Cells[3].Value.ToString()))
{
case 0:

dataGridView1.Rows[i].Cells[3].Value = "男 ";
break;

case 1:
dataGridView1.Rows[i].Cells[3].Value = "女 ";
break;


}
}

------解决方案--------------------
添加CellFormating事件方法
在方法中,通过读取改cell数据并做不同操作。
如你的根据数字来显示 "是 "或 "否 ",
可以

switch (...)
{
case 0:
return "否 ";
break;

case 1:
return "是 ";
break;
}