我想用数字对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列。
答案 0 :(得分:1)
您正在尝试获取第四个单元格(dataGridView1.Rows[nRowIndex].Cells[3]
)并且正如您所说的那样只有3个单元格(列)。只需将您的代码更改为:
textBox2.Text = dataGridView1.Rows[nRowIndex].Cells[2].Value.ToString()
答案 1 :(得分:0)
textBox2.Text = dataGridView1.Rows[nRowIndex].Cells[dataGridView1.Columns.Count -1].Value.ToString() ;
答案 2 :(得分: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() ; }
答案 3 :(得分:0)
在page_load()
中写: - &gt; gvJobCard.PageIndex = Int32.MaxValue;
protected void gvJobCard_RowDataBound(object sender,GridViewRowEventArgs e)
{
gvJobCard.PageIndex = gvJobCard.PageCount - 1; //适用于gvJOBCARD中的DESC顺序
}