【C#】DataGridViewの行に連続した値を追加する方法|名前リストをループで設定

目次

経緯

C#でDataGridViewを使ったアプリケーションを作成している中で、「行に連続して名前を追加したい」と考え、今回その方法を学習しました。
具体的には、「森」「小森」「中森」「大森」といった文字列を、1行に繰り返し並べる処理を作成します。


行に文字列をループで追加する実装例

今回の目的は、「空の1行を用意し、その行に対して連続して文字列を追加していく」ことです。以下がそのサンプルコードです。

// カラム数を指定する
int columnCount = 100;

// 表示させたい文字列の配列
string[] names = new string[] { "森", "小森", "中森", "大森" };

// 空の行を1行追加
dataGridView1.Rows.Add();

// 0行目の各セルにnames配列の値を順に入れる(ループ処理)
for (int i = 2, j = 0; i < columnCount && j < names.Length; i++)
{
    dataGridView1.Rows[0].Cells[i].Value = names[j];
    j = (j + 1) % names.Length;
}

コードの解説

  • columnCount:DataGridViewの列数を指定しています。今回は100列を想定しています。
  • names:追加したい名前を配列で定義します。順に繰り返し表示したい文字列をここに格納します。
  • Rows.Add():DataGridViewに空の行を1行追加します。
  • for文:
  • iはセルの列インデックスです(2列目から開始)。
  • jnames配列のインデックスです。
  • j = (j + 1) % names.Length によって、配列の末尾まで到達したら先頭に戻るようにしています(ループ処理)。

この処理を実行すると、DataGridViewの1行目に以下のような繰り返しが表示されます:

森 小森 中森 大森 森 小森 中森 大森 ……

実行時の注意点

  • i = 2からループを開始しているのは、1列目・2列目を別用途に使う前提があったためです。必要に応じてi = 0から開始して問題ありません。
  • DataGridViewの列数が事前に追加されていないと、セルへのアクセス時に例外が発生します。あらかじめ列数の設定または追加を行ってください。

まとめ

本記事では、C#のDataGridViewに対して、1行分に繰り返し文字列を挿入する方法をご紹介しました。
ループと配列、そして%(剰余)演算子を組み合わせることで、柔軟なパターン表示が可能になります。

このような方法は、日付や時間帯、ユーザー名など、規則的にデータを表示したい場面でも応用できます。
ぜひ、ご自身のプロジェクトでも活用してみてください。

最後までお読みいただき、ありがとうございました。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

私が勉強したこと、実践したこと、してることを書いているブログです。
主に資産運用について書いていたのですが、
最近はプログラミングに興味があるので、今はそればっかりです。

目次