cudenetf
Messages postés448Date d'inscriptionmardi 20 septembre 2005StatutMembreDernière intervention26 juillet 2012
-
6 nov. 2006 à 09:17
Lutinore
Messages postés3246Date d'inscriptionlundi 25 avril 2005StatutMembreDernière intervention27 octobre 2012
-
7 nov. 2006 à 08:41
bonjour,
je prend des elements d'une table et je voudrais les mettre en toolstripmenuitem dans un menustrip
je parviens a créer les toolstrip menuitem issus de la table
ces toostripmenuitem devrait posseder egalement des items (une sorte d'arbre).
Je voudrais que tous les items que g créé a partir de lta table possede les memes ramifications.
Dois-je les créer a chaque fois?
N'y a t il pas un moyen de "cloner" cette ramification une premiere fois et de la dupliquer?
COmme je sais qu'il y a au moins un element j'ai crée les ramifications en "dur" ds le designer. Maintenant j'aimerais avoir la meme chose "dynamiquement".
cudenetf
Messages postés448Date d'inscriptionmardi 20 septembre 2005StatutMembreDernière intervention26 juillet 20122 7 nov. 2006 à 05:31
oui g eu celui la aussi
quand je parle de ramification
c quelque chos edu genre
A_a
|_b_d_e
|_c |_f
avec A mon élément "principal" . j'aurais plusieurs éléments du type de A auquels je veux appliquer les memes "methodes" (a,b,c,d...) en conservant la forme de l'"arbre".
ces methodes seraient les memes avec juste A (ou autre element) en parametre
POur l'instant des que je trouve un element du type de A je recrée tt "l'arbre" mais cela me semble un peu lourd
Existe - til une autre methode? (quelle est la meilleure)
Lutinore
Messages postés3246Date d'inscriptionlundi 25 avril 2005StatutMembreDernière intervention27 octobre 201241 7 nov. 2006 à 08:41
On peut réutiliser le même "arbre" mais on a un peu de mal après a déterminer la branche racine ce qui pose un problème pour passer des paramètres différents aux methodes associées aux éléments du menu.
ToolStripMenuItem subSubItem0 = new ToolStripMenuItem( ); subSubItem0.Name subSubItem0.Text "subSubItem0";
subSubItem0.Click += new EventHandler( SubSubItem_Click );
ToolStripMenuItem subSubItem1 = new ToolStripMenuItem( ); subSubItem1.Name subSubItem1.Text "subSubItem1";
subSubItem1.Click += new EventHandler( SubSubItem_Click );
// DropDown créé une seule fois et qui contient
// tout l'arbre des sous-éléments.
dropDown = new ToolStripDropDownMenu( );
dropDown.Items.AddRange
(
new ToolStripItem[ ]
{
subSubItem0,
subSubItem1
}
);
ToolStripMenuItem subItem0 = new ToolStripMenuItem( ); subItem0.Name subItem0.Text "subItem0";
subItem0.DropDown = dropDown; // On ajoute le DropDown.
ToolStripMenuItem subItem1 = new ToolStripMenuItem( ); subItem1.Name subItem1.Text "subItem1";
subItem1.DropDown = dropDown; // On ajoute le DropDown.
private void SubSubItem_Click( object sender, EventArgs e )
{
// Ici on a du mal a déterminer l'arbre racine
// Le OwnerItem étant null.
// Faudrait voir avec l'event DropDownOpening.
MessageBox.Show( ( ( ToolStripMenuItem )sender ).Name );
}
C'est moyen, autant appeler une fonction qui créer un nouvel "arbre" pour chaque éléments, ça prendra peut être plus de place en mémoire mais apparemment les ToolStripMachins ont été pensés comme ça.