this.dataGridView1.Rows.Clear();
DataTable xx;
xx= データ取得;
foreach (DataRow viewdr in xx.Rows)
{
this.dataGridView1.Rows.Add(viewdr.ItemArray);
}
とやってるのだがスクロールバーで全部のデータが見られない。ヘッダーカラムをクリックしてソートしたり、カーソルキーなどで移動すると全部できる。
DataGridViewのスクロールバーエラーとかで、いろいろ検索してみると。
.VirtualMode = True .VirtualMode = False
とするといいとかある。
.ScrollBars = ScrollBars.None; .ScrollBars = ScrollBars.Both;で、治ったとか。
なんか、おまじないくさくてやだ。
リフレッシュそたらなおるのかな?と思って
this.dataGridView1.Refresh();
としてみるが、ダメ。おまじないにしないとだめかなと思ったところでちょっと思いつく。
this.dataGridView1.SuspendLayout();
this.dataGridView1.Rows.Clear();
DataTable xx;
xx= データ取得;
foreach (DataRow viewdr in xx.Rows)
{
this.dataGridView1.Rows.Add(viewdr.ItemArray);
}
this.dataGridView1.ResumeLayout();
で解決。描画を止めて、セットしてから描画するという手段で回避しました。きっと、この動作自体はバグなんでしょうね
これも、おまじないだが自分の気分的にはこちらのほうがいい。