Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Проблема с Dock в .NET

14K
22 февраля 2007 года
MapbeBu4
8 / / 23.02.2006
короче вот че нужно:
Я во время исполнения проги хочу строить вкладки с контролами. В этом то проблемы никакой нету, но есть другая. Когда я применяю к контролам свойства DockStyle они докяться не друг к другу, а к самому контейнеру (в данном случае к вкладке), наезжая друг на друга.

Попробовал то же самое сделать с компонентами созданными в дизайнере, все работает корректно...

Вот код, динамического создания контролов на C#:

Код:
tabControl1.TabPages.Add(caption);
 tabControl1.TabPages[tabControl1.TabCount - 1].Controls.Add(new TextBox());
TextBox send_t = (TextBox)tabControl1.TabPages[tabControl1.TabCount - 1].Controls[0];
send_t.Dock = DockStyle.Bottom;
 tabControl1.TabPages[tabControl1.TabCount - 1].Controls.Add(new ListBox());
ListBox users = (ListBox)tabControl1.TabPages[tabControl1.TabCount - 1].Controls[1];
users.Dock = DockStyle.Right;
tabControl1.TabPages[tabControl1.TabCount - 1].Controls.Add(new TextBox());
TextBox res_t = (TextBox)tabControl1.TabPages[tabControl1.TabCount - 1].Controls[2];
res_t.Multiline = true;
res_t.Dock = DockStyle.Fill;
res_t.ReadOnly = true;
res_t.BackColor = res_text.BackColor;
res_t.ScrollBars = ScrollBars.Vertical;


Плиз, помогите кто чем может :)
273
24 февраля 2007 года
3A3-968M
1.2K / / 22.12.2005
В Design-моде используется динамическая компиляция C#-кода, при помощи которой дизайнер студии получает картинку, отображаемую программисту при дизайне. Отсюда решение твоей проблемы в файле дизайнера XXX.Designer.cs. Ищешь тот код, который отвечает за докинг и копируй его в свой код.
14K
24 февраля 2007 года
MapbeBu4
8 / / 23.02.2006
Я в шоке! Сделал как было сказано выше, но, во-первых, там почти аналогичный код, что написал и я и, что самое хреновое, во-втрых это не помогло :(
14K
24 февраля 2007 года
MapbeBu4
8 / / 23.02.2006
Спасибо за совет, я разобрался как обойти проблему, думаю тему можно закрыть :)

З.Ы. если кому интересно, то выкрутился так: вот сокращенный код:
Код:
tabControl1.TabPages.Add(caption);
            tabControl1.TabPages[tabControl1.TabCount - 1].Controls.Add(new Panel());
            Panel pan = (Panel)tabControl1.TabPages[tabControl1.TabCount - 1].Controls[0];
            pan.Dock = DockStyle.Fill;
            pan.Controls.Add(new TextBox());
            pan.Controls.Add(new TextBox());
            TextBox tx1 = (TextBox)pan.Controls[0];
            TextBox tx2 = (TextBox)pan.Controls[1];
            tx1.Multiline=true;
            tx1.Dock = DockStyle.Fill;
            tx1.ScrollBars = ScrollBars.Vertical;
            tx2.Dock = DockStyle.Bottom;
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог