Контроль лимитов вложенности в WinForms

Я создаю элементы управления моей формы во время выполнения, и по какой-то причине мне нужно, чтобы глубина составляла более 49 вложенных элементов управления (т. Е. Элемент управления содержится в другом).

но появляется следующая ошибка:

исключение

Как я могу добавить больше элементов управления, вложенных друг в друга?

Вот небольшой фрагмент кода, который может воспроизвести ошибку:

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();

        Panel lastPanel = panel1;
        for (int i = 0; i < 49; i++)
        {
            Console.WriteLine(i);
            Panel newPanel = new Panel();
            lastPanel.Controls.Add(newPanel);
            lastPanel = newPanel;
        }
    }
}

1 ответ

Решение

По словам Рэймонда Чена, вы не можете, это было преднамеренное решение со стороны исполнительных разработчиков Windows.

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