Динамически устанавливаемый метод для tabPage - PullRequest
0 голосов
/ 09 апреля 2010

У меня есть TabControl. Я добавил это в закладки. К одному из них (tpTags) я динамически добавляю теги usercontrolModule. Когда я нажму на tpTags, я хочу вызвать метод для tagModule BindData

NEW CODE: 
  TabPage tpTags = new TabPage();
    tabControl1.TabPages.Add(tpTags);
    ...setting properties...
   TagsModule tagsModule = newTagsModule(_countryCode, ObjectType.Country);
 tpTags.Select() = tpTags.BindData(); //**How do it ??**

    tpTags.Controls.Add(tagsModule);

Это может быть: «Как установить событие, которое срабатывает при выборе этой вкладки?»

Ответы [ 2 ]

2 голосов
/ 09 апреля 2010

Вы должны подключить делегата к событию следующим образом:

tabControl1.SelectedIndexChanged += new EventHandler(this.tabControl1_SelectedIndexChanged);

Теперь вы можете поместить весь свой код в этот метод

private void tabControl1_SelectedIndexChanged(object sender, System.EventArgs e)
{
    if(TabControl1.SelectedTab == tpTags)
    {
        // BindData();
    }
}

BindData () запускается всякий раз, когда вашtabPage 'tpTags' выбран.Если вы хотите только в первый раз, установите флажок.

1 голос
/ 09 апреля 2010

Если вы имеете в виду «как сделать эту вкладку текущей», то:

tabs.SelectedTab = tpTags;

Если вы имеете в виду «как мне реагировать, когда выбрана эта вкладка», посмотрите на событие tpTags.SelectedIndexChanged (вам не обязательно заботиться об индексе при обработке этого события - вы можете просто проверить tabs.SelectedTab опять же).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...