Мой код о динамическом создании метки в цикле не работает, только один появляется - PullRequest
0 голосов
/ 15 февраля 2019

Я создаю приложение, в котором для каждого Char в текстовом файле (, где написан некоторый текст ) создается и пишется метка, содержащая одну букву char из txt.В текстовом файле «Hello» написано, и только H появляются

Вот мой фактический код:

string test = System.IO.File.ReadAllText(@"../../../../../Texte/Test.txt");
int x = 20;
int y = 20;
int i = 10;

foreach (char ch in test) {
    Label newlabel = new Label();
    newlabel.Location = new System.Drawing.Point(x + i, y);
    newlabel.Text = ch.ToString();
    panel1.Controls.Add(newlabel);
    i += 15;
}

1 Ответ

0 голосов
/ 15 февраля 2019

Вам следует установить для свойства AutoSize вашей метки значение TRUE.Без установки этого свойства первая метка покрывает остальные, поэтому вы можете видеть только первую.Попробуйте следующее:

foreach (char ch in test) {
    Label newlabel = new Label();
    newlabel.Location = new System.Drawing.Point(x + i, y);
    newlabel.Text = ch.ToString();
    newlabel.AutoSize = true; 
    panel1.Controls.Add(newlabel);
    i += 15;
}
...