1 回答
TA贡献1789条经验 获得超8个赞
这应该有效:
protected void Button1_Click(object sender, EventArgs e)
{
List<DataGridViewRow> CountRows = new List<DataGridViewRow>();
for (int i = this.GridView1.Rows.Count-1; CountRows.Count < 2 || i >= 0; i--)
{
if ((double)this.GridView1.Rows[i].Cells[2].Value != 0)
{
CountRows.Add(this.GridView1.Rows[i]);
}
}
if(CountRows.Count >= 1)
{
lblValue1.Text = "Value1:" + CountRows[0].Cells[0].Text;
}
if(CountRows.Count == 2)
{
lblValue2.Text = "Value2:" + CountRows[1].Cells[0].Text;
}
}
我所做的是使用常规 for 循环从结束到开始计数,当找到 2 行或到达开始时停止。找到的行被放在一个列表中以保存它们。
我在最后使用了额外的 if,以免在找到少于 2 行时(不是在您的示例中)使索引超出范围异常。请随意编辑。
希望能帮助到你!
- 1 回答
- 0 关注
- 144 浏览
添加回答
举报