2012-05-04 5 views
10

У меня возникли проблемы с поиском документации о том, как добавить панели в SplitContainer. Я могу создать SplitContainer отлично, но я не могу поместить панели, которые я закодировал внутри разделительного контейнера.Добавление панелей в SplitContainer в Windows Forms

Я пытался делать

sc.Container.Add(myPanel); 
sc.Container.Add(myOtherPanel); 

Но Container всегда нуль. Кто-нибудь знает, что я делаю неправильно?

ответ

17

SplitContainer всегда содержит две панели, и вы не можете это изменить! (И вам не нужно добавлять панели самостоятельно.)

Вы можете получить доступ к двум панелям через свойства Panel1 и Panel2.

Если вам нужно больше панелей, вы можете разместить несколько SplitContainers.


UPDATE

Вы не можете заменить существующие панели. Что вы можете сделать, это разместить свои собственные элементы управления на существующих сплит контейнерными панелей (и ваши средства управления могут быть также System.Windows.Forms.Panels, содержащие другие элементы управления или пользовательские элементы управления):

sc.Panel1.Controls.Add(myPanel); 
sc.Panel2.Controls.Add(myOtherPanel); 

myPanel.Dock = DockStyle.Fill; 
myOtherPanel.Dock = DockStyle.Fill; 

Конечно, вы можно добавить их также с помощью конструктора форм Visual Studio, если у вас нет сценария, в котором вам нужно динамически добавлять элементы управления. Если вы создадите свои собственные элементы управления, они автоматически появятся в панели инструментов внутри того же проекта, и вы можете просто перетащить их на панели SplitContainer.

+0

Я не пытаюсь добавить к ней больше панелей. Я хочу поставить панели, которые я закодировал внутри разделительного контейнера. Я отредактирую свой пост. – David

+1

Я вижу. Панели уже созданы, и вам просто нужно добавить элементы управления к ним самостоятельно. Благодарю. – David

+0

Да, и вы можете добавить их с помощью конструктора форм Visual Studio, если у вас нет сценария, в котором вам нужно динамически добавлять элементы управления. Если вы создадите свои собственные элементы управления, они автоматически появятся в панели инструментов внутри того же проекта, и вы можете просто перетащить их на панели SplitContainer. –

1

Управление SplitContainer уже имеет две панели с именем Panel1 и Panel2. Выберите панель, которую вы хотите использовать:

sc.Panel1.Controls.Add(myPanel); 
sc.Panel2.Controls.Add(myOtherPanel); 
Смежные вопросы