1

我有

Class A
{
private string mName;
private int mId;
private int mType;
private int mqty;
/*
property to view variables.
*/
}

BindingList<A> listofA =  new BindingList<A>();

“listofA”绑定到 datagridview 控件。

dataGridView1.DataSource=listofA;

显示为。

------------------
|Name|Id|Type|Qty|
------------------
|CatA| 1|   0|  5|
|CatB| 2|   0|  6|
|DogA| 3|   1|  7|
|DogB| 4|   1|  8|

我想要显示一个未绑定的行。

------------------
|Name|Id|Type|Qty|
------------------
|CatA| 1|   0|  5|
|CatB| 2|   0|  6|
|Cats|__|   0| 11| <------sum of qty 
|DogA| 3|   1|  7|
|DogB| 4|   1|  8| 
|Dogs|__|   1| 15| <------sum of qty

我正在考虑在“A类”中添加一个布尔值,如果为假,它将作为一个项目,如果为真,它将作为总和。

有一个更好的方法吗。

4

1 回答 1

0

我要做的是 RowDataBound 事件中的代码:

1)比较上一行的数据(例如:动物类型)。如果不同,那么你知道你已经到达一个类别的末尾,如果相同,你应该总结你需要总结的不同值

2a)类型相同,你做了总结,没有什么可做的

2b) 类型不同,您使用汇总值创建一个新行并重置总和变量

于 2013-06-12T09:53:40.237 回答