// 見出しをdatagridviewに入力 foreach (string str in Columns) { dataGridView1.Columns.Add(str, str); } // 中身を入力 (行を繰り返し入力していく。) int nColmn = 0; Dictionarydict; dict = cdate.GetData(); foreach (string key in dict.Keys) { // 文字列をgridviewに登録。 string[] strtmp = new string[dict[key].Length]; for ( int i = 0; i < dict[key].Length; i++) { strtmp[i] = dict[key][i].str; } dataGridView1.Rows.Add(strtmp); }
ですが、データの行数が2万ぐらいになったら、めちゃくちゃおそくなってしまい。。。
なので、DataTableにデータをつくっておいて、その後DataGridViewのDatasourceとして
登録するようにしたらだいぶよくなりました。
// 見出しをdatagridviewに入力 DataTable dt = new DataTable(); foreach (string str in Columns) { dt.Columns.Add(str, str.GetType()); } // 中身を入力 (行を繰り返し入力していく。) int nColmn = 0; Dictionarydict; dict = cdate.GetData(); foreach (string key in dict.Keys) { // 文字列をgridviewに登録。 string[] strtmp = new string[dict[key].Length]; for (int i = 0; i < dict[key].Length; i++) { strtmp[i] = dict[key][i].str; } dt.Rows.Add(strtmp); } dataGridView1.DataSource = dt;
0 件のコメント:
コメントを投稿