が発生するのはです。マウスを使用してスクロールバーをDataGridviewの下部に移動すると問題が発生します。私は、このボタンをクリックしたときにそう、問題はを発生しません。DataGridviewのスクロールバーの末尾にあるC#行をロード
私の目標は、初めに200行と、ユーザーがDataGridViewのスクロールバーロードの終わりに到達したより多くの200行をロードすることですように...何が起こる
private void Home_load(object sender, EventArgs e)
{
LoadRows();
}
// Detects if the scrollbar is at bottom
private void dataGridViewUsers_Scroll(object sender, ScrollEventArgs e)
{
if (hasMoreRows == false)
return;
// The rows height is always 22
int totalHeight = this.dataGridViewUsers.Rows.Count * 22;
if ((totalHeight - this.dataGridViewUsers.Height) < this.dataGridViewUsers.VerticalScrollingOffset)
LoadRows();
}
private void LoadRows()
{
DataSet DSet = controllers.Users.LazyLoad(offset);
if (DSet.Tables[0].Rows.Count <= 0)
{
hasMoreRows = false;
return;
}
for (int i = 0; i < DSet.Tables[0].Rows.Count; i++)
{
this.dataGridViewUsers.Rows.Add
(
DSet.Tables[0].Rows[i]["id"].ToString(),
DSet.Tables[0].Rows[i]["name"].ToString(),
DSet.Tables[0].Rows[i]["mobile"].ToString(),
DSet.Tables[0].Rows[i]["signup_date"].ToString()
);
}
offset += 200;
this.dataGridViewUsers.Refresh();
}
は通常、人々はスクロールバーをつかむと、下にそれを引っ張ることです。
データグラムビューでこれを行うと、予想よりも多くの行が追加されますが、異常な動作が発生します。
私は大体2000〜行を持っている、と私は一度下にスクロールバーを引くたび、それは総行に到達するまで、私のスクロールバーがアップ&下、上&下、上&ダウン、ナットを行きます。スクロールバーに人生そのものがあるようなものですか、ループしています。
あなたは私のコードでこのような振る舞いを再現することができますか?まあ
AFIK、これは通常[仮想モード](https://msdn.microsoft.com/en-us/library/15a31akc)で行われます – Slai