1.如何计算价格单元 2.他们没有选择记录。 最后它显示了价格单元的总和。
private void dataGrid1_LoadingRow(object sender, DataGridRowEventArgs e)
{
try
{
string s = dataGrid1.Columns[2].GetCellContent(e.Row).ToString();
//give me a Null Reference Error
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
答案 0 :(得分:0)
试试这个:
int sum = 0;
for (int i = 0; i < dataGridView1.Rows.Count; ++i)
{
sum += Convert.ToInt32(dataGridView1.Rows[i].Cells[1].Value);
}
答案 1 :(得分:0)
LoadingRow
事件为您提供了当前DataGridRow
,因此您需要访问相应的项目DataGridRow
。
所以,改变这个
string s = dataGrid1.Columns[2].GetCellContent(e.Row).ToString();
类似于:
MyItem item = Dgrd.ItemContainerGenerator.ItemFromContainer(e.Row) as MyItem;
if (item != null)
{
System.Diagnostics.Debug.WriteLine(item.Name);
}
或,
MyItem i = e.Row.DataContext as MyItem;
if (item != null)
{
System.Diagnostics.Debug.WriteLine(item.Sku);
}