1
我有一个GridView包含列代码,经验,工资,奖金GridView的RowsAdded事件不工作
数据代码,经验和工资列来自BindingSource
,我需要计算数据为奖金根据经验和薪水。
所以我创建RowsAdded
事件的DataGridView
并添加以下代码
int index = employeeBindingSource.Position;
Employee emp = (Employee)employeeBindingSource.Current;
double bonus = (emp.Experience < 4 ? 0.08f : 0.12f) * emp.Salary * 12;
employeeDataGridView.Rows[index].Cells[3].Value = bonus.ToString("0.00"); //setting value for bonus column
employeeBindingSource.MoveNext();
,但我得到了BOUNS只有两排。
所以我评论的代码本次活动中,创造了另一个事件RowStateChanged
添加上面的代码,它工作正常。
什么是与RowsAdded
事件的问题?并且是RowStateChanged
正确的事件来计算奖金列?
谢谢。
我应该在哪里添加此属性?我应该将其添加到Employee类中吗?而我的数据源是输入对象的列表。 – Searock 2011-06-15 05:46:36
@Searock - 是的,我认为是。但不能肯定地说,因为我不知道你的Employee类正是如此。如果“工资”是“雇员”类的属性,那么“奖金”也应该属于它。 – 2011-06-15 05:48:24
我希望我可以做到这一点,但我不是Employee类的作者,所以我没有添加属性的选项。 – Searock 2011-06-15 05:51:52