如何将 BindingSource 数据源与 DataGridViewRow 列表一起使用

本文关键字:列表 一起 DataGridViewRow BindingSource 数据源 | 更新日期: 2023-09-27 18:30:36

我正在尝试使用绑定源填充 DataGridView。问题是我不知道如何将 DataGridViewRow(或任何类型的结构,除了我目前避免的 DataTable 之外)的列表传递给 BindingSource DataSource,因为通过这样做,我看到的是所有类属性,而不仅仅是 Cells 内容。这段代码似乎不起作用:

bindingSource.DataSource = dgvRowsList;
bindingSource.DataMember = "Cells";
datagrid.DataSource = bindingSource;

提前感谢!

如何将 BindingSource 数据源与 DataGridViewRow 列表一起使用

DataGridViewRows是作为数据绑定b/w datagridview和datasource对象(通常是一些.net数据结构,如List,DataTable等)自动生成的。您可能不需要使用数据绑定,而是直接操作 datagridview,这样您将手动创建新行。请参阅如何以编程方式向数据网格视图添加新行。

如果出于某种原因想要控制数据绑定如何解释数据源对象中的数据,则需要定义返回 PropertyDescriptor 集合的自定义类型描述符,通过执行此操作,您可以指定将作为基础数据对象的属性公开的内容(但此解决方案适用于复杂情况)。