Winform & Textbox

  • Автор темы Sequd
  • Дата начала
Статус
Закрыто для дальнейших ответов.
S

Sequd

#1
всем привет, у меня 2 вопроса...
1) создаю вин окно, в нем есть комбо бокс с несколькими строками... как сделать, чтобы в зависимости от того что выбрано, менялось содержимое окна? как привязать событие и прочее это понятно, но не могу понять, как сделать, чтобы одно содержимое менялось на другое... работаю в визуал студио 2008... если возможно, то выложите простенький пример...
2) как можно создать текст бокс, как в гугл хром? я имею ввиду чтобы при фокусе на него, появлялась рамочка и чтобы не пришлось каждый текст бокс настраивать!
 

LuMee

Well-known member
02.05.2006
477
0
#2
По повод (1). Не совсем понятно, что имеется в виду под содержимым окна, но, как вариант, можно попробовать следующий сценарий:
1. На каждый вариант "содержимого" создать свой UserControl с нужными компонентами на нем
2. На форму добавить панель нужного размера, внутри которой контролы-"содержимое" будут размещаться
3. В классе формы заводишь массив этих самых контролов, соотвтетсвующий элементам комбо-бокса:
Код:
private readonly UserControl[] ContentControl = new UserControl[] 
{
new FirstContentControl() { Dock = DockStyle.Fill },
new SecondContentControl() { Dock = DockStyle.Fill },
... // и т.д. на каждый вариант оформления.. общее число равно количеству элементов в комбобоксе, ессно
}
4. При изменении выбранного в комбо-боксе элемента кладешь нужный контрол в панель:
Код:
this.controlsPanel.Controls.Clear();
this.controlsPanel.Controls.Add(ContentControls[comboBox.SelectedIndex];
;
 
S

Sequd

#3
Спасибо за ответ... только я не совсем разобрался... это типо отдельно создается пользовательские элементы? а потом они будут вызываться?
 

LuMee

Well-known member
02.05.2006
477
0
#4
Вроде того. UserControl - это создаваемый тобой контрол, внутри которого ты размещаешь все, что тебе нужно: кнопки, текстбоксы и все такое прочее, т.е. то самое "содержимое" (если я правильно понял задачу). А далее ты просто отображаешь тот или иной контрол на форме в зависимости от пользовательского выбора, что визуально выглядит как смена содержимого окна.
 
Статус
Закрыто для дальнейших ответов.