Как динамические добавлять элементы Visual studio c# [закрыт]

137
26 ноября 2019, 21:10

Как достать записи из бд и динамически добавлять их в такой форме? Какой компонент использовать?

Answer 1

Вот отличное решение

public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            Render();
        }
        void Render()
        {
            var controls = new List<Control>();
            var count = 3;
            for (int i = 0; i < count; i++)
            {
                var p = new Panel
                {
                    AutoScroll = true,
                    Dock = DockStyle.Top,
                    Margin = new Padding(10),
                    Controls =
                    {
                        new Label()
                        {
                            Text = (i + 1).ToString(),
                            Dock = DockStyle.Left,
                            Width = 50,
                            Height = 80,
                            TextAlign = ContentAlignment.MiddleCenter,
                            Margin = new Padding(5),
                            BackColor = Color.Transparent
                        },
                        new Panel()
                        {
                            Margin = new Padding(10),
                            Width = 500,
                            Dock = DockStyle.Right,
                            BorderStyle = BorderStyle.FixedSingle,
                            Controls =
                            {
                                new Panel()
                                {
                                    Height = 60,
                                    Width = 200,
                                    Controls =
                                    {
                                        new Label() { Text = "text1:.....", Dock = DockStyle.Top},
                                        new Label() { Text = "text1:.....", Dock = DockStyle.Top},
                                        new Label() { Text = "text1:.....", Dock = DockStyle.Top}
                                    },
                                    Dock = DockStyle.Left
                                },
                                new Panel()
                                {
                                    Height = 60,
                                    Width = 200,
                                    Controls =
                                    {
                                        new Label() { Text = "text1:.....", Dock = DockStyle.Top},
                                        new Label() { Text = "text1:.....", Dock = DockStyle.Top},
                                        new Label() { Text = "text1:.....", Dock = DockStyle.Top}
                                    },
                                    Dock = DockStyle.Left,
                                },
                            }
                        },
                        new Panel()
                        {
                            Dock = DockStyle.Right,
                            BorderStyle = BorderStyle.FixedSingle,
                            Controls =
                            {
                                new Label() { Text = "TEXT....", TextAlign = ContentAlignment.MiddleCenter, Height = 80}
                            }
                        }
                    }
                };
                controls.Add(p);
            }

            for (int i = controls.Count - 1; i >= 0; i--)
            {
                Controls.Add(controls[i]);
            }
        }
    }
READ ALSO
Обезумевший RayCast

Обезумевший RayCast

Делаю проект учебный - игру на unityВроде бы работала стрельба простая на RayCast'ах

122
Фоновые задачи ASP.NET

Фоновые задачи ASP.NET

Создаю бота для ВК используя Callback APIВсю основу уже сделал, есть БД, использую миграции

109
Изменение отображения chart doughnut

Изменение отображения chart doughnut

Как можно изменить chart doughnut ,чтобы он выглядел как на этой картинке? По умолчанию он выглядит как полный круг, на картинке же только половина...

108