Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.94/18: Рейтинг темы: голосов - 18, средняя оценка - 4.94
9 / 11 / 2
Регистрация: 21.04.2010
Сообщений: 91
1

Исходя из активной вкладки TabControl получить имена вкладок и текстовых полей

08.02.2012, 15:53. Просмотров 3492. Ответов 5
Метки нет (Все метки)

Задача.
На форме имеется TabControl и Button. По нажатии кнопки для TabControl создается вкладка с почти известным названием (присутствует счетчик, который не позволяет именам совпадать т.е. вкладки имеют названия "Tab1", "Tab2" и т.д.) и к этой вкладке прикрепляется точно также созданное текстовое поле со свойством Multiline. Кнопка может нажиматься большое количество раз. Необходимо:
Исходя из активной вкладки получить имена вкладки, и текстового поля и например вставить в данное текстовое поле какой либо текст.

Самое сложное для меня получилось установить текст, не имея ссылки на элемент в исходном коде ( ну т.к. элемент у нас создается только по нажатию кнопки)

Добавлено через 59 минут
C#
1
2
3
4
5
6
7
8
9
 private ScintillaNet.Scintilla FindSciTeByName(string name)
        {
            foreach (Control c in this.Controls) //assuming this is a Form
            {
                if (c.Name == name)
                    return c as ScintillaNet.Scintilla; //found
            }
            return null; //not found
        }
Функцию для поиску по имени нашел, но самое интересное, что имен созданных динамически в окне отладки - нет. Собственно ничего не находит

Что делать?

Добавлено через 14 часов 11 минут
Скучные Вы все =) После хорошего сна сам все решил. Как оказалось поиск внутри вкладок нужно проводить отдельно, т.к. сама форма не отдаст названия контролов, которые находятся внутри вкладок.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.02.2012, 15:53
Ответы с готовыми решениями:

Определение активной вкладки в TabControl
как определить индекс активной вкладки в TabControl. В PageControl это...

Извлечь имя активной вкладки TabControl
На форме есть TabControl, Label и две кнопки (одна создать вкладку, вторая вывести имя вкладки в...

Получить контент вкладок tabcontrol
Добрый день! У меня есть tabContorol, на каждом контроле создается TextEditor, в текстедиторе...

TabControl: получить доступ к определенному контролу вкладки
Здравствуйте, TabPage tabPage = new TabPage(); tabPage.Text = "Tab" + (tabControl1.TabCount +...

5
85 / 33 / 12
Регистрация: 12.03.2011
Сообщений: 234
Записей в блоге: 2
09.02.2012, 23:34 2
а поподробней в приват можешь код кинуть
Заранее спасибо
0
161 / 161 / 11
Регистрация: 07.09.2011
Сообщений: 995
10.02.2012, 11:17 3
А лучше поделись сразу тут. Интересно же.
0
9 / 11 / 2
Регистрация: 21.04.2010
Сообщений: 91
10.02.2012, 13:09  [ТС] 4
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
static public Control FindControlsInTab(TabPage Tab, string ControlName)
    {
        foreach (Control c in Tab.Controls)
        {
            if (Tab.Controls.Count > 0)
            {
                if(c.Name == ControlName)
                {
                    return c as Control;
                }
                else
                {
                    return null;
                }
            }
        }
        return null;
    }
Производит поиск в определенном Tab элементе. Что бы получить текущий активный:
C#
1
2
TabPage ActiveTab = TabControl.SelectedTab;
TextBox Text =  FindControlsInTab(ActiveTab, "MyEdit")
0
333 / 333 / 90
Регистрация: 04.03.2010
Сообщений: 648
10.02.2012, 13:28 5
и что возвращает метод? null?
0
9 / 11 / 2
Регистрация: 21.04.2010
Сообщений: 91
10.02.2012, 14:09  [ТС] 6
Пардон, ошибся. Вот так должно быть.
C#
1
2
3
4
5
6
7
8
static public Control FindControlsInTab(TabPage Tab, string ControlName)
    {
        foreach (Control c in Tab.Controls)
        {
                if(c.Name == ControlName) return c;
        }
        return null;
    }
2
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.02.2012, 14:09

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Получить индекс вкладки в tabControl по заголовку в этой вкладке
собственно вопрос в названии...

Как получить имя вкладки в наборе вкладок при перемещении по нему?
Господа, подскажите! Никак не могу сообразить, как при перемещении по вкладкам в наборе вкладок...

Получить имена полей таблицы БД
Есть класс, который делыет выборки из таблиц БД (SQL server 2k) через различные ХП. Один из методов...

Получить имена полей таблицы
Можно как-нибудь получить имена полей таблицы БД (MS SQL)?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.