IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

ajout de propriété à un contrôle utilisateur


Sujet :

Windows Forms

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations forums :
    Inscription : Janvier 2008
    Messages : 4
    Points : 2
    Points
    2
    Par défaut ajout de propriété à un contrôle utilisateur
    Bonjour,

    Comment créer un contrôle utilisateur personnalisé (textBox par exemple), qui possède une propriété nommé p par exemple qui prend comme valeur un objet (inputPanel par exemple).
    C'est à dire lorsque je sélectionne le composant graphique dans visual studio, je dois pouvoir voir la propriété p s'afficher dans la fenêtre propriétés. La valeur de cette propriété doit contenir une liste déroulante de tous les objets de type inputPanel de la forme.

    Merci de m'aider.
    ---------------------------
    Je précise que j'utilise Microsoft Visual C# 2008 et le compact framework 3.5

  2. #2
    Membre émérite
    Avatar de Samuel Blanchard
    Homme Profil pro
    Expert .NET
    Inscrit en
    Février 2010
    Messages
    1 504
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France

    Informations professionnelles :
    Activité : Expert .NET

    Informations forums :
    Inscription : Février 2010
    Messages : 1 504
    Points : 2 682
    Points
    2 682
    Par défaut
    Bonjour

    En surchargeant simplement TextBox :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    public class MaTextBox : TextBox
    {
       public Panel MonPanel
      {
          get;
          set;
      }
    }
    .
    Pas de question technique en MP, merci.
    .
    Un emulator Gameboy Color pour Windows Phone ?
    c'est moi qui l'ai fait

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations forums :
    Inscription : Janvier 2008
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Oui c'est ce que j'ai fait voici mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
    public partial class ClickableTextBox : TextBox
        {
     
            public ClickableTextBox()
            {
                InitializeComponent(); 
                panel = new InputPanel();
             }
     
            public String SelectInputPanel
            {
                get
                {
                    return panel;
                }
                set
                {
                    panel = value;
                }
            }
     
            //fields
     
            private InputPanel panel;
     
        }
    ma question est comment récupérer le inputPanel à partir de la forme où est inséré le textBox? et comment on peut afficher son non dans la propriété SelectInputPanel ?

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 11
    Points : 4
    Points
    4
    Par défaut
    Salut Kasparov.

    Je ne sais pas si tu as toujours besoin d'aide concernant ce user controle mais un peu de recherche sur le net t'aurais permis de trouver ...

    Il te suffit de rajouter ceci devant la propriété que tu souhaites faire apparaitre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    [Category("MonControle"), Browsable(true), Description("Ma super description")]
    public String SelectInputPanel
            {
                get
                {
                    return panel;
                }
                set
                {
                    panel = value;
                }
            }
    Ainsi, tu retrouveras ta propriété dans la fenêtre de propriétés de ton controle sous la catégorie MonControle, tu pourras la modifier car elle est en Browsable et la description affichée correspondra à "Ma super description".

    Tout ce qu'il faut savoir concernant les User Control se trouve ici :
    UserControls

    Bonne continuation.

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations forums :
    Inscription : Janvier 2008
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Merci glucoz21 pour la réponse. Je travaille sur le compact framework, donc la directive [Category()...] ne fonctionne pas , elle est remplacé par un ficher .xmta. De plus le type de mon selectedInputPanel est un objet (InputPanel) et non pas un string.

Discussions similaires

  1. [Débutant] Ajouter des Propriétés à un contrôle personnalisé
    Par Invité dans le forum ASP.NET
    Réponses: 4
    Dernier message: 28/06/2011, 14h56
  2. Réponses: 2
    Dernier message: 22/04/2011, 00h34
  3. [Contrôle utilisateur] - Comment changer les propriétés ?
    Par Booorf dans le forum Windows Presentation Foundation
    Réponses: 1
    Dernier message: 20/01/2009, 16h41
  4. Contrôle utilisateur : certaines propriétés inacessibles !
    Par soso78 dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 31/05/2007, 08h31
  5. Réponses: 2
    Dernier message: 20/04/2006, 14h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo