Avete presente la PictureBox di VB.NET a me serviva che potesse avere una proprietà ImageList e una proprietà ImageIndex come per i bottoni.

per questo ho creato un controllo personalizzato che a come base la PictureBox standard e gli ho aggiunto le altre 2 proprietà

codice:
Imports System.Windows.Forms
Public Class PictureBoxUltra
    Inherits System.Windows.Forms.PictureBox

    'Codice generato da Progettazione Windows Form

    Dim m_imagelist As ImageList
    Dim m_imageindex As Integer = -1
    Public Property ImageList() As ImageList
        Get
            Return m_imagelist
        End Get
        Set(ByVal Value As ImageList)
            m_imagelist = Value
            If m_imageindex > -1 Then
                On Error Resume Next
                MyBase.Image = m_imagelist.Images(m_imageindex)
                MyBase.Invalidate()
            End If
        End Set
    End Property

    Public Property ImageIndex() As Integer
        Get
            Return m_imageindex
        End Get
        Set(ByVal Value As Integer)
            m_imageindex = Value
            If Not m_imagelist Is Nothing Then
                MyBase.Image = m_imagelist.Images(Value)
                MyBase.Invalidate()
            End If
        End Set
    End Property
End Class
xò pur funzionando vorrei capire come migliorarla.
Per esempio quando si utilizza la proprietà ImageIndex di un Bottone appare una comboBox con le anteprime delle immagini in piccolo e il relativo index che poi vado a scegliere..... come si fa diventare la proprieta ImageIndex in quel modo???????