Héritage control WinForm MenuItem

Résolu
cs_cbu Messages postés 394 Date d'inscription mercredi 30 janvier 2002 Statut Membre Dernière intervention 4 novembre 2009 - 2 août 2005 à 14:54
cs_cbu Messages postés 394 Date d'inscription mercredi 30 janvier 2002 Statut Membre Dernière intervention 4 novembre 2009 - 2 août 2005 à 15:57
Bonjour,

je souhaite ajouter une propriété ID par ex à un control MenuItem..




Je me suis dis qu'il fallait créer une classe MenuItemPerso qui
héritait de MenuItem et de lui ajouter une propriété publique ID.. Ca à
l'air de fonctionner, mais j'ai l'impression que je perds les méthode
de base..



Bizarre.. car quand je fais un new de mon objet MenuItemPerso, il ne me prend pas les paramètres habituels d'un objet MenuItem.



Suis je clair ?

Quelqu'un aurait une idée ?



Merci

Cbu

3 réponses

Lutinore Messages postés 3246 Date d'inscription lundi 25 avril 2005 Statut Membre Dernière intervention 27 octobre 2012 41
2 août 2005 à 15:11
Salut, les constructeurs sont masqués:

public class MyMenuItem : MenuItem
{
private static int id = 0;


public MyMenuItem( ) : base( )
{
id++;
}


public MyMenuItem( string text ) : base( text )
{
id++;
}
}
3
Lutinore Messages postés 3246 Date d'inscription lundi 25 avril 2005 Statut Membre Dernière intervention 27 octobre 2012 41
2 août 2005 à 15:51
Si c'est juste pour un ID tu peux utiliser la propriété Tag du contrôle.
0
cs_cbu Messages postés 394 Date d'inscription mercredi 30 janvier 2002 Statut Membre Dernière intervention 4 novembre 2009 1
2 août 2005 à 15:57
Exactly ce qu'il me manquait.. En fait non c'est pour bien d'autres propriétés.. Mais j'ai voulu aller au plus simple ici.
Merci pour ta réponse.

EN fait je suis en Vb.Net et je pensais bien qu'ici j'allais trouver une réponse.. Sur Vbfrance.com cela reste beaucoup trop du vb ou vba

Voila ma class héritée :



Public Class TeamMenuItem : Inherits MenuItem


Private _ID As Integer


Public Sub New(ByVal text As String, ByVal onClick As System.EventHandler)
MyBase.New(text, onClick)
End Sub


Public Sub New(ByVal text As String)
MyBase.New(text)
End Sub


Public Property ID() As Integer
Get
Return _ID
End Get
Set(ByVal Value As Integer)
_ID = Value
End Set
End Property


End Class

Merci encore ;)
Cbu
0
Rejoignez-nous