Coucou la compagnie !
Bon j'ai fais un UserControl qui est en fait une sorte de TabStrip, des onglets avec une gestion de sous Onglets. Et un PlaceHolder en tant que container de page.
Etant donné qu'un UserControl c'est bien relou quand on doit le déployer dans plusieurs projets, on s'est dit "tiens si on le mettait en Librairie WebControl"
Casse la tienne, je me lance la dedans :s
1er problème :
Gérer en code behind le SelectedItemTemplate et ItemTemplate pour mettre un LinkButton. La solution que j'ai trouvé pour le moment c'est de faire une classe qui hérite de LinkButton et qui implemente ITemplate. Ca passe.
le problème est que dans le ItemDataBound de ma DataList, le 1er E.Item contient bien le LinkButton mais pas les autres. Donc obligé pour les autres de recréer un LinkButton à la volée.
Comme vous pouvez le voir j'ai mis une condition pour voir si lnkTab était nul. Et c'est le cas donc je crée un LinkButton à la volée et l'ajoute.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 private void DLstMasterOnglets_ItemDataBound(object sender, DataListItemEventArgs e) { { TabSheetItem Onglet = (TabSheetItem)e.Item.DataItem; LinkButton lnkTab = (LinkButton)e.Item.FindControl("lnkMasterTab"); if (lnkTab!=null) lnkTab.Text = Onglet.Name; else { lnkTab = new LinkButton(); lnkTab.Text = Onglet.Name; e.Item.Controls.Add(lnkTab); } }
Apparemment ca provient du ItemTemplate qui foire, car dans un userControl ca marche très bien. Comment résoudre ca ?
2ème problème :
Qui découle surement du premier à chaque reload de la page, si je reload pas tout, il perd justement tout les Items sauf le 1er.
3ème problème :
Quand je clique sur un LinkButton (sauf le 1er), il se passe que parfois, on doit cliquer 2 fois sur le LinkButton pour prendre en compte. La 1ère fois en cliquant ca passe pas dans le ItemCommand mais la 2eme fois si. Ca le fait à 75% du temps, et je n'arrive pas à reproduire exactement le cas ou des fois ca marche
Voili Voilou
Pour l'instant mis à part le problème 3 qui est lourdingue à l'utilisation, le reste à l'air de bien marcher, mais c'est un peu bancal.
Pourriez vous m'aider svp
Merci bien.
Partager