DockStyle Fill для элементов управления, созданных во время выполнения

Я пытаюсь сделать что-то очень простое, что доставляет мне огромные проблемы в С# Winforms. У меня есть два групповых поля на вкладке. Один состыкован справа, а другой снизу . У меня также есть диаграмма на странице (System.Windows.Forms.DataVisualization.Charting). Эта диаграмма предназначена для стыковки. Заполните оставшееся место на странице.

Впервые я столкнулся с проблемой, когда диаграмма скрывается за обеими группами. Я обнаружил, что могу решить эту проблему, используя команду «Перенести на передний план» (или изменив порядок структуры документа), после чего диаграмма правильно закрепится и не перекроет никакие другие элементы управления на странице

. ] Тем не менее, я пытаюсь добавить диаграмму на страницу во время выполнения, и она снова заполняет всю страницу и скрывается за другими элементами управления. Как мне это сделать?

РЕДАКТИРОВАТЬ: Забыл упомянуть, что вызов «BringToFront» вызовет исключение «Ширина должна быть больше 0 пикселей».

chart_TapChart = new Chart();
chart_TapChart.Dock = DockStyle.Fill;
chart_TapChart.BringToFront();
GroupBox gp1 = new GroupBox();
gp1.Dock = DockStyle.Right;
GroupBox gp2 = new GroupBox();
gp2.Dock = DockStyle.Bottom;
this.Controls.Add(chart_TapChart);    <--this refers to tabpage
this.Controls.Add(gp1);
this.Controls.Add(gp2);
6
задан ImGreg 6 March 2012 в 22:12
поделиться