У меня есть пользовательский элемент управления с именем CustomDataEntry, который состоит из метки, двух текстовых полей, двух кнопок и календаря месяца. У меня есть свойство ShowDateButtons, которое заставляет две кнопки появляться после каждого текстового поля, а нажатие кнопок приводит к отображению календаря месяца. Когда отображается MonthCalendar, я увеличиваю высоту usercontrol, чтобы отображался MonthCalendar.
При использовании usercontrol я добавляю несколько экземпляров кода в левую панель (Panel1) SplitContainer, и их Top-Docking их:
for (int i = 1;i<=5;i++) //This isn't how I really do this...it is for demonstration purposes
{
CustomDataEntry cde = new CustomDataEntry();
//Setting properties of cde here
SplitContainer.Panel1.Controls.Add(cde);
cde.Dock = DockStyle.Top;
cde = null;
}
Когда я запускаю приложение и нажимаю на одну из кнопок даты, он показывает календарь, но когда я скрываю календарь, все пользовательские элементы управления ниже той, где календарь был отображен исчезнуть, как показано ниже. Как я могу предотвратить это?
На стороне обратите внимание, что при изменении размера панели SplitContainer все или большинство границ текстового поля исчезают. Я предполагаю, что вопросы связаны. См. Ниже.