windows DataGridView 刷新问题

jkiwen18 2007-01-22 11:37:22
对于DataGridView 中的一列选择用DataGridViewComboBoxColumn显示数据,但是当这个列的数据源发生变化时,我重新将新的数据源设置到该列,发现数据源虽然改变了,但是显示的数据仍然没有变化.

此现象,在数据源的数据有增加时,没有错误.但是在修改时出现.

DataTable dt = new DataTable;
dt.Columns.Add("Name");
dt.Columns.Add("Code");

dt.Rows.Add(new string[] {"A","A"});
dt.Rows.Add(new string[] {"B","B"});
dt.Rows.Add(new string[] {"C","C"});

colDealType.DataSource = dt;
colDealType.DisplayMember = "Name";
colDealType.DisplayMember = "Code";

当做如下修改时出错

dt.Rows[0][0] = "X";

colDealType.DataSource = dt;
colDealType.DisplayMember = "Name";
colDealType.DisplayMember = "Code";

不解.....不知道是我刷新的方法不对还是,Bug.
...全文
179 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
tyougyokuki 2007-01-22
  • 打赏
  • 举报
回复
建议在作dt.Rows[0][0] = "X";这一步之前先作colDealType.DataSource = Nothing
小y的CSDN博客 2007-01-22
  • 打赏
  • 举报
回复
dt.Rows[0][0] = "X";有错
呵呵 不能这样修改dt吧

用:
DataRow row=dt.Rows[0];
row.BeginEdit();
row[0]="X";
row.EndEdit();
liujia_0421 2007-01-22
  • 打赏
  • 举报
回复

try..

dt.Rows[0][0] = "X";
dt.AcceptChanges();

也不能肯定...

顺便问下,出现的是什么异常...
jkiwen18 2007-01-22
  • 打赏
  • 举报
回复
还是不行啊
jcyluck 2007-01-22
  • 打赏
  • 举报
回复
colDealType.DataSource = null;
colDealType.refresh();
tinki 2007-01-22
  • 打赏
  • 举报
回复
colDealType.DataSource = null;

111,119

社区成员

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

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

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