Резиновый дизайн с TableLayoutPanel

182
15 мая 2018, 06:20

У меня есть TableLayoutPanel, в нем k столбцов и k строк.

table = new TableLayoutPanel
{
    Dock = DockStyle.Fill
};
table.RowStyles.Clear();
table.ColumnStyles.Clear();
for (var k = 0; k < Order; k++)
{
    table.RowStyles.Add(new RowStyle(SizeType.Percent, 100 / Order));
    table.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 100 / Order));
}    

Затем в каждую строку и столбец я вставляю Label с текстом:

for (var i = 0; i < Order; i++)
    for (var j = 0; j < Order; j++)
    {
        table.Controls.Add(new Label
        {
            Dock = DockStyle.Fill,
            TextAlign = ContentAlignment.MiddleCenter,
            Font = new Font("Webdings", 72, FontStyle.Regular),
            Text = ""
        }, i, j);
    }

При изменении размеров окна при k = 4 форма еще более менее хорошо и быстро отрисовывается, но при k = 8 форма ведет себя странно и при разворачивании окна на весь экран отрисовывается секунды 2-3 и при отрисовке выглядит странно. В чем дело?

READ ALSO
Как добавить Button в TableCell? ASP.NET

Как добавить Button в TableCell? ASP.NET

Собственно на странице есть таблицаВ эту таблицу динамически добавляется информация из базы данных

212
Как отловить статус с сервера, в Unity?

Как отловить статус с сервера, в Unity?

Нужно понять какой статус мне возвращает серверНапример если статус: 201, то регистрация успешна и т

171
Создание TTS на базе своего голоса

Создание TTS на базе своего голоса

Меня недавно заинтересовала тема создания собственного TTS-голоса (Microsoft SAPI)Право, в русском сегменте по данной части информации достаточно...

209
c# wpf openFileDialog не работает

c# wpf openFileDialog не работает

В обоих случаях форма теряет фокус и сразу же получает его и диалог не открываетсяЕсть решение? В References подключил System

309