Metro UI C#: как сделать форму внутри формы?

Я хочу знать, как открыть разные формы с одной основной родительской формы в Metro Framework UI похож на Modern POS System, Насколько я знаю, я не нашел ничего похожего на это в Интернете, и у меня также возникают проблемы, пытаясь выяснить это в Metro. Также я не говорю о MDI Forms

Вот пример: (не в метро) Современный дизайн POS (смотрите первые несколько секунд видео)

Я говорю о пользовательском интерфейсе типа приборной панели, в котором вы открываете различные модули с помощью кнопок в левой части главной формы, а модули открываются как дочерняя форма в основной форме.

1 ответ

Когда дело доходит до такой процедуры, в ней столько ошибок. Вы можете просто использовать простую форму, а не MetroForm, потому что MetroForm создает на экране несколько черную форму при вызове в качестве дочерней формы. Я не знаю, только ли это в моем приложении, но это действительно раздражает.

Вы можете просто добавить другие формы на панель в главной форме.

Есть много уроков о том, как это сделать, но я дам вам пример. Я создал метод примерно так в моем utilclass:

public static Form NewForm(Form myForm, Panel myPanel)
    {
        myForm.TopLevel = false;
        myForm.AutoScroll = true;
        myForm.Dock = DockStyle.Fill;

        myPanel.Controls.Clear();
        myPanel.Controls.Add(myForm);

        myForm.Show();
        return myForm;
    }

затем вызов из основной формы на панель:

Form2 myForm2 = new Form2();
UtilClass.NewForm(myForm2 , [YourMainFormPanel]);

Я знаю, что этот код не лучший подход, но я просто даю вам идеи.

Другие вопросы по тегам