如何获取未在WPF中选择的DataGrid的单元格内容?

时间:2015-12-24 19:25:02

标签: c# wpf datagrid

enter image description here 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);
        }

    }

2 个答案:

答案 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);
    }
相关问题