当datagrid绑定到一个对象数组时,如何新增一行。

river723 2004-09-13 10:58:09
例如:
public class Class1
{
int _id;
string _name;
public int Id
{
set{_id=value;}
get{return _id;}
}
public string Name
{
set{_name=value;}
get{return _name;}
}
}
然后在form的load里显示在datagrid里:
Class1 c1;
for(int i=1;i<5;i++)
{
c1=new Class1();
c1.Id=i;
c1.Name="name"+i.ToString();
values.Add(c1);

}
this.dataGrid1.DataSource = values;
显示没有问题,然后我想加一个按钮add,给数组加一行,然后在datagrid里显示,但数组中加进去了,datagrid却不变。
private void button1_Click(object sender, System.EventArgs e)
{
Class1 c=new Class1();
c.Id=6;
values.Add(c);
this.dataGrid1.DataSource=values;
this.dataGrid1.Refresh();
}
请问这里如何写才能让datagrid刷新。
...全文
263 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
daguzhang 2004-09-13
  • 打赏
  • 举报
回复
Class1 c=new Class1();
c.Id=6;
c.Name = "dd";
values.Add(c);
dataGrid1.DataSource = null;
this.dataGrid1.DataSource=values;
绝对可以
river723 2004-09-13
  • 打赏
  • 举报
回复
对不起,我忘了说是在winform里
wangrong001 2004-09-13
  • 打赏
  • 举报
回复
dataGrid1.SetDataBinding(dataSet1,dataSet1.Table[0].TableName);
win911 2004-09-13
  • 打赏
  • 举报
回复
设定好DataSource后要执行DataBinding()来进行绑定的
dataGrid1.DataBinding()
nanhaiyiou 2004-09-13
  • 打赏
  • 举报
回复
刚才没有看明白,搂住,你添加以后没有刷新页面吧!!!
nanhaiyiou 2004-09-13
  • 打赏
  • 举报
回复
可以在属性里添加!不过不太好!不方便!
我感觉如果经常改动的话,建议楼主动态的添加!
gesnpt 2004-09-13
  • 打赏
  • 举报
回复
dataGrid1.DataBinding()
daguzhang 2004-09-13
  • 打赏
  • 举报
回复
dataGrid1.SetDataBinding
river723 2004-09-13
  • 打赏
  • 举报
回复
结贴
daguzhang 2004-09-13
  • 打赏
  • 举报
回复
数据源是arraylist好象不能直接在datagrid上添加
换别的思路把
daguzhang 2004-09-13
  • 打赏
  • 举报
回复
在datagrid上不显示新行(绑定datatable可直接增加新行),有没有办法让它显示出来,即直接在datagrid上新增一行?
---------------
是你在datagrid上直接添加 吗
river723 2004-09-13
  • 打赏
  • 举报
回复
我好笨!再问一下如果不用按钮增加,直接绑定对象数组,在datagrid上不显示新行(绑定datatable可直接增加新行),有没有办法让它显示出来,即直接在datagrid上新增一行?一会儿结贴。

110,538

社区成员

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

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

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