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

C# 如何将BindingSource数据源与DataGridViewRow列表一起使用?,c#,winforms,datagridview,C#,Winforms,Datagridview,我正在尝试使用绑定源填充DataGridView。问题是,我不知道如何将DataGridViewRow列表(或任何类型的结构,但我目前正在避免的DataTable除外)传递给BindingSource数据源,因为通过这样做,我看到的是所有类属性,而不仅仅是单元格内容。此代码似乎不起作用: bindingSource.DataSource = dgvRowsList; bindingSource.DataMember = "Cells"; datagrid.DataSource = binding

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

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

提前谢谢

DataGridViewRows是通过数据绑定b/w datagridview和datasource对象(通常是一些.net数据结构,如List、DataTable等)而自动生成的。您可能不需要使用数据绑定,而是直接操作datagridview,这样您将手动创建新行。请看


如果出于某种原因希望控制数据绑定如何解释datasource对象中的数据,则需要定义返回PropertyDescriptor集合的自定义TypeDescriptor,通过这样做,可以指定哪些内容将作为基础数据对象的属性公开(但此解决方案更适合于复杂情况).

最初我使用AddRows方法,传递DataGridViewRow的列表。它工作得完美无缺。但现在我需要使用数据绑定,所以我迷路了。正如您已经提到的,TypeDescriptor似乎太复杂了。我会等待一个更简单的解决方案。无论如何,谢谢。:)