Combobox avec image

Contenu du snippet

cette classe herite du comosant combobox, on peut lui ajouter une image liste pour avois une image, biensur il peut etre ameliore pour gerer plusieurs images, l'alignement du texte...
en fait c'est juste une piste pour ceux qui veulent commencer
a+

Source / Exemple :


Namespace MyBiblio.Windows.form

    Public Class ComboMaison

        Inherits ComboBox

        Private m_ImgLst As ImageList

        Public Property ImgLst() As ImageList
            Get
                Return m_ImgLst
            End Get
            Set(ByVal Value As ImageList)
                m_ImgLst = Value
            End Set
        End Property

        Protected Overrides Sub OnDrawItem(ByVal e As
System.Windows.Forms.DrawItemEventArgs)

            Me.DropDownStyle =
ComboBoxStyle.DropDownList

            MyBase.OnDrawItem(e)

            If e.Index = -1 Then
                Exit Sub
            End If

            Dim oB As System.Drawing.SolidBrush = New
System.Drawing.SolidBrush(Me.ForeColor)

            If ImgLst.Images.Count <> 0 Then

                Dim Img As Image = Me.ImgLst.Images(0)

                Dim iX = e.Bounds.Left
                Dim iY = e.Bounds.Top

               
e.Graphics.FillRectangle(SystemBrushes.InactiveCaption,
e.Bounds)

                e.Graphics.DrawImage(Img, CType(iX,
Single), CType(iY, Single))

                e.Graphics.DrawString(Me.Items(0),
Me.Font, oB, CType(iX, Single) + Img.Width, CType(iY,
Single))

                oB.Dispose()

            End If

        End Sub

    End Class

End Namespace

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.