我想在gridview中获取下一个数据,就是当我使用break时;它完全没有循环,但是当我不使用休息时;它按原样调用我输入的文本的最后一行数据。
private void button7_Click(object sender, EventArgs e)
{
for (int i = 0; i < gridView1.RowCount; i++)
{
var row = gridView1.GetDataRow(i);
var genre = row["genre"].ToString();
if (genre.IndexOf(textBox8.Text, StringComparison.OrdinalIgnoreCase) >= 0)
{
gridView1.FocusedRowHandle = i;
break;
}
}
}
如果我不使用break,它会选择'ba'=篮球的最后数据。 我想要的是当我点击下一步它选择芭蕾并停止,当我再次点击下一个按钮时,它选择篮球
答案 0 :(得分:1)
使用int
变量来存储循环的当前迭代:
int iteration=0;
private void button7_Click(object sender, EventArgs e)
{
for (int i = iteration; i < gridView1.RowCount; i++)
{
var row = gridView1.GetDataRow(i);
var genre = row["genre"].ToString();
if (genre.IndexOf(textBox8.Text, StringComparison.OrdinalIgnoreCase) >= 0)
{
gridView1.FocusedRowHandle = i;
iteration=i+1;
break;
}
}
}
在“查找”按钮上,您可以将迭代重置为0