2010-04-09 4 views
0

J'ai TabControl. Je l'ai ajouté aux tabpages. Pour l'un d'entre eux (tpTags), j'ajoute dynamiquement des tags usercontrol. Lorsque je clique sur tpTags Je veux appeler la méthode sur tagsModule BindDataMéthode définie dynamiquement pour tabPage

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); 

Il pourrait être: « Comment définir un événement qui se déclenche lorsque cet onglet est sélectionné »

+2

Que voulez-vous dire "set method' Select() '"? Voulez-vous dire "comment puis-je sélectionner cet onglet?" ? Ou voulez-vous dire "comment définir un événement qui se déclenche lorsque cet onglet est sélectionné?" ? –

Répondre

2

Vous avez à câbler le délégué à l'événement comme celui-ci:

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

Maintenant vous pouvez mettre tout votre code dans cette méthode

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

BindData() fonctionne chaque fois que tpTags votre TabPage ' est sélectionné. Si vous ne voulez que pour la première fois, définissez un drapeau.

+0

Je ne comprends pas votre question maintenant. Pouvez-vous l'élaborer? – Amsakanna

+0

J'ai TabControl. J'ai ajouté à cela des pages. Pour l'un d'entre eux (tpTags), j'ajoute dynamiquement des tags usercontrol. Lorsque je clique sur tpTags, je veux appeler la méthode sur tagsModule BindData – user278618

1

Si vous voulez dire « comment puis-je faire cela l'onglet en cours », puis:

tabs.SelectedTab = tpTags; 

Si vous voulez dire « comment puis-je répondre lorsque cet onglet est sélectionné », puis regardez l'événement tpTags.SelectedIndexChanged (vous ne pas nécessairement besoin de se soucier de l'index lors de la gestion de cet événement - vous pouvez simplement vérifier tabs.SelectedTab à nouveau).

+0

Pourriez-vous, s'il vous plaît code à jour? J'ai besoin de votre aide – user278618