Domanda

Quando popolo il mio treeview vorrei usare le stesse immagini che uso nella mia barra degli strumenti ecc. che sono memorizzate in un file di risorse.

Il treeview sembra accettare le immagini tramite un elenco di immagini.

Stavo pensando di riflettere e aggiungere le risorse a un elenco di immagini in caricamento ...

Come si fa in generale a farlo?

È stato utile?

Soluzione

Di solito ho un elenco di immagini che popolo usando le immagini dal file di risorse. Questo può essere fatto facilmente durante l'inizializzazione del modulo.

Esempio (con tre immagini in Resources.resx, chiamato uno , due e tre ):

private void PopulateImageList()
{
    _treeViewImageList.Images.Add("one", Resources.one);
    _treeViewImageList.Images.Add("two", Resources.two);
    _treeViewImageList.Images.Add("three", Resources.three);
}

Altri suggerimenti

Solo per completezza, quel "mazza" approccio per aggiungere tutte le immagini da una risorsa

foreach (var propertyInfo in
    typeof(Resources).GetProperties(BindingFlags.Static | BindingFlags.NonPublic)
        .Where(info => info.PropertyType == typeof (Bitmap))) {
                mainImageList.Images.Add(
                    propertyInfo.Name,
                    (Bitmap)propertyInfo.GetValue(null, null));
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top