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 :

Créer un TextBox Personnalisé en incluant la propriété Image


Sujet :

Windows Forms

  1. #1
    Membre régulier
    Homme Profil pro
    Logisticien
    Inscrit en
    Avril 2016
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Logisticien
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2016
    Messages : 70
    Points : 85
    Points
    85
    Par défaut Créer un TextBox Personnalisé en incluant la propriété Image
    Bonjour.

    Je veux créer un contrôle TextBox personnalisé dans lequel on peut y insérer une image.
    Voici le bout de code qui fonctionne sauf pour l'ajout de l'image qui ne fonctionne pas.

    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
     
    public partial class TextboxAvecIconSansBorder : TextBox
        {
            private Color _bottomBorderColor=Color.Gray;
            private Color _onFocusColor = Color.Green;
            private Image _getImage;
     
            public SmartTextboxBorders()
            {
                BorderStyle = BorderStyle.None;
                SetStyle(ControlStyles.SupportsTransparentBackColor, true);
                BackColor = Color.Transparent;
                AutoSize = false;
     
                Controls.Add(new Label
                {
                    Height = 1,
                    Dock = DockStyle.Bottom,
                    BackColor = _bottomBorderColor
                });
                Controls.Add(new PictureBox {
                    Height = 25, Width = 25,
                    Dock = DockStyle.Right,
                    Anchor = (AnchorStyles.Top | AnchorStyles.Left),
                    SizeMode = PictureBoxSizeMode.StretchImage,
                    Image = _getImage // Comment afficher l'image choisie dans le PictureBox ?
                });
                InitializeComponent();
            }
     
            [Browsable(false)]
            public new BorderStyle BorderStyle
            {
                get{ return base.BorderStyle; }
                set{ base.BorderStyle = value; }
            }
     
            public Color BottomBorderColor
            {
                get { return _bottomBorderColor; }
                set{_bottomBorderColor = value;Controls[0].BackColor = _bottomBorderColor;}
            }
     
            public Color ButtomBorderColorOnFocus
            {
                get { return _onFocusColor; }
                set { _onFocusColor = value; }
            }
     
            [DisplayName("ImageOnRight")]
            public Image GetImage
            {
                get { return _getImage; }
                set { _getImage = value;}
            }
     
            private void SmartTextboxBorders_Enter(object sender, EventArgs e) { Controls[0].BackColor = _onFocusColor; }
     
            private void SmartTextboxBorders_Leave(object sender, EventArgs e) { Controls[0].BackColor = _bottomBorderColor; }
        }
    Je voudrai choisir un fichier image dans un répertoire et l'insérer dans mon contrôle Personnalisé.

    Merci d'avance,

    Cordialement.

  2. #2
    Expert confirmé
    Inscrit en
    Avril 2008
    Messages
    2 564
    Détails du profil
    Informations personnelles :
    Âge : 64

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 564
    Points : 4 441
    Points
    4 441
    Par défaut
    bonjour

    Ceci nécessite pour tout Control "sainement constitué" que tu puisses dans l’évent Paint peindre ton image ensuite laisser ton "Custom TextBox peindre le texte saisie.
    Je dis "sainement constitué" car le Control TextBox est mal fichu
    Car il ne peint pas son texte dans l' évent Paint mais "de derrière les fagots" de Microsoft "for some unknown raison" raison connu de MS uniquement.

    Aussi des "hacks" ont été tenté par certains.
    Dont celui-ci,véritable usine à gaz ,sur le site Code Projet intitulé "AlphaBlendTextbox" dont voici le lien
    https://www.codeproject.com/Articles...slucent-textbo

    En esperant qu'il fera ton bonheur.

Discussions similaires

  1. Réponses: 3
    Dernier message: 14/04/2007, 18h46
  2. Comment créer un menu personnalisé avec Access2007
    Par marionAccess dans le forum Access
    Réponses: 6
    Dernier message: 24/01/2007, 16h29
  3. Créer un formulaire personnalisé
    Par dddodo dans le forum IHM
    Réponses: 19
    Dernier message: 08/01/2007, 13h17
  4. Réponses: 5
    Dernier message: 24/10/2006, 21h18
  5. [VB.NET] Créer une textbox from scratch
    Par AP dans le forum Windows Forms
    Réponses: 2
    Dernier message: 07/04/2006, 10h09

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