My DataGridView
には〜200行が含まれ、それぞれにはユーザー情報(姓など)が含まれます。ユーザーがこれらの行のいずれかを選択すると、データベースを照会するために選択した行のIDを取得する必要があります。そのため、ユーザーが行を選択すると、IDが一致するまで全リストを繰り返し処理します。ここで私が話しているものを視覚化するためのコードです:行が選択された後に呼び出すDataGridViewイベント
if (e.RowIndex > -1)
{
int selectedId = Convert.ToInt32(dataGridView.Rows[e.RowIndex].Cells["IdColumn"].Value);
foreach (var user in Users)
if (user.Id == selectedId)
{
SelectedUser = GetUserById(user.Id);
break;
}
}
今、私はここで使用しているイベントがDataGridView.RowEnter
では、それが問題だリストは、このように、最初にロードされていても、このイベントが発生しますので、最低でも100回ループを実行してforeach
ループを実行します。
問題は、上記のコードが行が選択された後に一度だけ実行されるように、どのイベントを使用する必要がありますか?
ドンデータをロードするまでイベントを接続しないでください。 – LarsTech
これまでのところ、これは最高のオプションです。あなたが受け入れる答えとして投稿していないのは間違いです。 – user6807975