首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在更新后刷新c# dataGridView?

如何在更新后刷新c# dataGridView?
EN

Stack Overflow用户
提问于 2011-08-10 17:10:52
回答 9查看 132.3K关注 0票数 35

我有一个dataGridView,当我单击任何行时,表单将打开以更新行数据,但在结束更新后,更新表单将关闭,但dataGridView数据不会更新

我该怎么做呢?

EN

回答 9

Stack Overflow用户

发布于 2011-08-16 22:29:53

BindingSource是唯一不需要第三方ORM的方法,一开始可能看起来很冗长,但在BindingSource上使用一种更新方法的好处是非常有用的。

例如,如果您来源是用户字符串列表

代码语言:javascript
复制
List<string> users = GetUsers();
BindingSource source = new BindingSource();
source.DataSource = users;
dataGridView1.DataSource = source;

然后,当您完成编辑时,只需更新您的数据对象,无论是DataTable还是像BindingSource上的here和ResetBindings这样的用户字符串列表;

代码语言:javascript
复制
users = GetUsers(); //Update your data object
source.ResetBindings(false);
票数 52
EN

Stack Overflow用户

发布于 2011-08-10 18:11:54

将您的DatagridView重新绑定到源代码。

代码语言:javascript
复制
DataGridView dg1 = new DataGridView();
dg1.DataSource = src1;

// Update Data in src1

dg1.DataSource = null;
dg1.DataSource = src1;
票数 37
EN

Stack Overflow用户

发布于 2019-09-11 20:30:10

我知道我来晚了,但我希望这篇文章能帮助那些在类绑定方面也做同样事情的人

代码语言:javascript
复制
var newEntry = new MyClassObject();

var bindingSource = dataGridView.DataSource as BindingSource;
var myClassObjects = bindingSource.DataSource as List<MyClassObject>;
myClassObjects.Add(newEntry);
bindingSource.DataSource = myClassObjects;

dataGridView.DataSource = null;
dataGridView.DataSource = bindingSource;
dataGridView.Update();
dataGridView.Refresh();
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7008361

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档