Я играю с проектом, C # .NET 4, и я немного застрял. У меня есть панель, которая будет динамически заполняться флажками в зависимости от количества элементов в папке, что прекрасно работает.
Но когда я изменяю размер формы, я хочу, чтобы флажки перемещались на панели, как небольшая сетка флажков, которая занимает свободное место.
До сих пор мне не удавалось найти эффективный способ сделать это. Я до сих пор не понял, как это работает, но я не знаю, что это имеет значение. Методы, которые я пробую, являются убийцами ресурсов.
е.
int boxCount = panel1.Size.Width/123;
int x = 3, y = 3, i = 0;
foreach (Control chkbox in panel1.Controls)
{
if (i < boxCount)
{
chkbox.Location = new Point(x, y);
x += 123;
}
else
{
i = 0;
x = 3;
y += 123;
chkbox.Location = new Point(x, y);
}
i++;
}
Я ищу что-то, что не удерживает мой ЦП и превращает мою форму в трехстраничную книгу, когда я изменяю ее размер. Для справки я имел в виду что-то вроде селектора обоев рабочего стола Windows в 7, за исключением изменения размера фактических элементов управления.
Я не работал с WPF, но мне, скорее всего, начнут показывать свет, поэтому я искал решение Windows Forms для садового разнообразия.