c# datagridview 绑定时 改变单元格的值

首先从数据库查出一个dataTable与datagridview绑定然后这个表里有一列是sex:1是,男,2是女。查出来的数据显示的是1和2,这样不行。于是我在加载完成后... 首先从数据库查出一个 dataTable 与 datagridview 绑定
然后这个表里有一列是 sex :1 是,男,2是女。
查出来的数据显示的是1 和2,这样不行。

于是我在加载完成后循环整个dataTable更改掉sex列 ,把1改成男,2改成女
这样就改完了。

我的问题是:在加载完成后再循环dataTable更改单元格的值速度实在是太慢了,50W条数据更改和不更改速度很明显。请问,c#有没有一个事件,和asp.net一样有个行绑定事件,就是这个行刚绑定上就我就可以去修改单元格值,这样速度应该会快一点点??

或者您有更好的办法请教教我。
展开
 我来答
优游自如
推荐于2017-11-28 · TA获得超过1012个赞
知道小有建树答主
回答量:233
采纳率:0%
帮助的人:186万
展开全部
DataGridView.CellFormatting 事件

每绘制一个单元格,就会发生 CellFormatting 事件

用法:

private void Grid_CellFormatting( object sender, DataGridViewCellFormattingEventArgs e )
{
if ( e == null || e.Value == null || !(sender is DataGridView) )
return;

DataGridView view = (DataGridView)sender;
object originalValue = e.Value;

if(view.Columns[e.ColumnIndex].DataPropertyName == "sex")
e.Value = ((int)originalValue == 1) ? "男" : “女”;
}
6202146
2010-12-22 · TA获得超过166个赞
知道小有建树答主
回答量:404
采纳率:0%
帮助的人:267万
展开全部
把那列改成TemplateField的,然后在源码界面找到那列的绑定语句Eval那个。
把这个值当成一个参数,传到代码页,在代码页写一个方法,用来对1和2进行转换
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式