配列を特定のテキスト ボックスにロードする方法の解決策を探しています。先日も同様の質問を投稿しました。提供された答えは良かったのですが、コード内での配置に問題があると思われる問題が発生しています。これは私が持っているものです:
private void btnQuickPlayNumbers_Click(object sender, EventArgs e)
{
int randCheck = 0;
Random rand = new Random();
int[] powerball5 = new int[5];
for (int i = 0; i < powerball5.Length; )
{
randCheck = rand.Next(0, 60);
while (!(powerball5.Contains(randCheck)))
{
powerball5[i] = randCheck;
foreach (Control x in this.Controls)
{
if (x is TextBox)
{
((TextBox)x).Text = powerball5[i].ToString();
}
}
i++;
}
}
}
これで、フォーラムのすべてのテキスト ボックスが読み込まれますが、問題はありませんが、すべてのテキスト ボックスに同じ番号が読み込まれます。これはパワーボール プログラムであり、次のようにアレイをボックスにロードする必要があります。
textbox1 = powerball5[0]; textbox2 = powerball5[1]; などなど。
ロードしようとしているボックスは全部で 5 個あります。これが同じ数値をそれらすべてにロードする理由は、foreach ループの位置が配列のロードとカウンターのインクリメントを許可していないためであるという結論に達しました。移動して独自のメソッドを作成しようとしましたが、独自のメソッドとして実行すると、範囲外のインデックス エラーが発生します。だから私は何をすべきかについて少し迷っています。どんな助けでも大いに感謝します。さらに情報が必要な場合は、すべての人のニーズを満たすためにできる限りの更新を試みます。お時間をいただきありがとうございました。