Вы должны войти, чтобы создавать сообщения и темы.

Как вывести разный результат в разные label

Всем привет!
Ребят помогите пожалуйста, решил начать с простого но как оказалось не совсем)
Много чего не понимаю все облазил все равно не могу найти ответа на свой вопрос.

Мне необходимо вывести 3 разных ответа в label1, label2, label3. (это получилось)
Но! Чтобы каждый новый label выводился к примеру ниже предыдущего label на несколько px. (не получилось)
Получается вывод результата проверки.

Т.е. необходимо как то сделать чтобы каждый label выводился исходя ошибок а не так как сейчас 1 ошибка а выводит сразу три

if (Windows == "Windows 10 Enterprise")
                {
                    NotSupport();
                    label_Windows.ForeColor = Color.FromArgb(255, 89, 89);
                    label1.Text += "Корпоративная не поддерживается";

                }
                if (bit != "64-разрядная")
                {
                    NotSupport();
                    label_bit.ForeColor = Color.FromArgb(255, 89, 89);
                    label2.Text += "У Вас не 64 бит";
                }
                if (vers != "2005")
                {
                    NotSupport();
                    label_vers.ForeColor = Color.FromArgb(255, 89, 89);
                    label3.Text += "У Вас не 2005";
                }

 

label в label3 это логично т.к. я туда его сам отправил, но как сделать чтобы когда одна ошибка показывало, один label, когда две ошибки, второй label, ну и когда три ошибки, третий label.

Помогите пожалуйста.

Если ты заранее подготовил все лэйблы (их можно создавать и в процессе надобности), то:
У всех элементов обычно есть свойство Visible. Сначала делаешь все невидимыми, например:
Скопированоlabel1.Visible = false;
Затем делаешь счетчик, скажем:
Скопированоint count = 1;
и в случае ошибки пишешь в лэйблы по порядку, вызывая в каждом случае
СкопированоControls["label" + count].Visible = true;
СкопированоControls["label" + count].Text = "lasdfjlaskdf";
Скопированоcount++;
Если я вообще правильно понял задачу ))

А создавать по мере надобности примерно так:

int count = 1;
private void button1_Click(object sender, EventArgs e)
{
    CreateLabel("Ошибка 1");
    CreateLabel("Ошибка 2");
    CreateLabel("Ошибка 3");
}

private void CreateLabel(string text)
{
    Label label = new Label
    {
        Location = new Point(5, 5 + count * 17),
        Name = "label" + count,
        Size = new Size(300, 17),
        Text = text
    };
    Controls.Add(label);
    count++;
}

 

Лайкнул XpucT
XpucT

KiloSub, спасибо за помощь, часть с этого использовал, получилось!)