Estoy intentando crear una vista de árbol como lista de archivos en un cuadro de texto enriquecido.Icono a imagen: problema de transparencia
Debería verse como una vista de árbol del explorador. Mi código es capaz de cambiar el tamaño del ícono, pero falta la transparencia (fondo gris claro en lugar de transparencia). ¿Qué necesito cambiar aquí? ¿El formato de la imagen está mal? ¿Hay alguna forma mejor de agregar una imagen a richtextbox?
// Get file info
FileInfo f = new FileInfo("myfile.name");
// Get icon for fileinfo
Icon ico = Icon.ExtractAssociatedIcon(f);
// Convert icon to bitmap
Bitmap bm = ico.ToBitmap();
// create new image with desired size
Bitmap img = new Bitmap(16,16,PixelFormat.Frmat32bpRgb);
// Create graphics with desired sized image
Graphics g = Graphics.FormImage(img);
// set interpolation mode
g.InterpolationMode = InterpolationMode.HighQualityBiCubic;
// draw/resize image
g.DrawImage(bm, new Rectangle(0,0,16,16), new Rectangle(0, 0, bm.Width, bm,Height), GraphicalUnit.Pixel);
// Paste to clipboard
Clipboard.SetImage(bm);
// Paste in RichtextBox
rtb.Paste();
Ejemplo:
Editar:
He descubierto que la imagen es transparente, pero utilizando Clipboard.SetImage() no publica como imagen transparente.
¿Alguna idea de por qué y qué puedo hacer para solucionarlo? ¿Debo cambiar a un control de cuadro de texto diferente?
No lo entiendo. ¿Por qué no usar realmente un TreeView? ImageList hace iconos sin problemas. –
Porque necesito imprimirlo - si uso una vista en árbol es un problema con varias páginas ... Y estoy usando una lista de imágenes como caché - esta es solo la parte del problema actual. –