-1

我想按数字对 datagridview 中的数据进行排序,并且我想在文本框中显示最后一行的特定单元格。我怎样才能做到这一点?

我的代码:(已编辑)

        if (dataGridView1.Rows.Count > 0)
        {   
            int nRowIndex = dataGridView1.Rows.Count - 1;

            dataGridView1.Rows[nRowIndex].Selected = true;

            textBox2.Text = dataGridView1.Rows[nRowIndex].Cells[2].Value.ToString() ; << exception occur

我得到了这个 NullReferenceException。

如何解决这个问题?

PS:我那里有 3 列,我需要获取最后一行的第 3 列。

4

4 回答 4

1

您正在获得例外,因为您试图获得第四个单元格(dataGridView1.Rows[nRowIndex].Cells[3]),而正如您所说,您只有 3 个单元格(列)。只需将您的代码更改为:

textBox2.Text = dataGridView1.Rows[nRowIndex].Cells[2].Value.ToString()
于 2012-08-01T06:04:04.657 回答
0
textBox2.Text = dataGridView1.Rows[nRowIndex].Cells[dataGridView1.Columns.Count -1].Value.ToString() ;
于 2012-08-01T06:03:38.343 回答
0

根据您的最后评论,我对您的代码进行了一些更改:

if (dataGridView1.Rows.Count > 0)         
{                
    int nRowIndex = dataGridView1.Rows.Count - 1;              
    dataGridView1.Rows[nRowIndex].Selected = true;              
    if(dataGridView1.Rows[nRowIndex].Cells[2].Value != null)
        textBox2.Text = dataGridView1.Rows[nRowIndex].Cells[2].Value.ToString() ;          } 
于 2012-08-01T06:12:49.067 回答
0

在 page_load()

写:-> gvJobCard.PageIndex = Int32.MaxValue;

protected void gvJobCard_RowDataBound(对象发送者,GridViewRowEventArgs e)

{

gvJobCard.PageIndex = gvJobCard.PageCount - 1; //它适用于gvJOBCARD中的DESC顺序

}

于 2012-08-02T03:41:32.830 回答