どうか、ここで何が問題なのですか
abc = labGuns.Text; // multiline label
string[] arr = Regex.Split(abc, "\r\n");
x = 0;
foreach (string line in arr)
{
MessageBox.Show(line); //works fine - shows each line of label
x = x + 1;
string abc = "cbGuns" + x.ToString();
MessageBox.Show(abc); //works fine - shows "cbGuns1", "cbGuns2"...
foreach (Control c in panPrev.Controls)
{
if (c.Name == abc) // five combos named cbGuns1, cbGuns2...
{
c.Text = line; //doesn't work. No combo changes its text
}
}
}
最後の行を---に変更してc.Text = "323"
も何も起こりません。
したがって、間違いは明らかにコードの終わり近くにあります。
このコードは(テストとして)機能します:
foreach (Control c in panPrev.Controls)
{
if (c.Name == "cbGuns1")
{
c.Text = "323";
}
}