MSComctlLib TreeView ImageList Problem loading ImageList in TreeView

0

Recently Started working on MSComctlLib TreeView and ImageList

want to figure out how to use images in my TreeView, also how to set background to my TreeView object;

using C# windows application, writing addon for sap b1 which has ActiveX support.

so what I did
loaded MSComctlLib.TreeCtrl.2 object
loaded MSComctlLib.ImageListCtrl.2 object

code snippet for ImageList

var type = Type.GetTypeFromProgID("MSComctlLib.ImageListCtrl.2");
var inst = Activator.CreateInstance(type) as MSComctlLib.ImageList;

var image = Image.FromFile("Images/folder.bmp"); //tried with .png as well

then created IPictureDisp object using Microsoft.VisualBasic.Compatibility.VB6 namespace

var imgObj = Support.ImageToIPictureDisp(image);
inst.ListImages.Add(ref ind, ref key, imgObj1); //here getting error

but when I'm trying to add imgObj to ListImages getting

Catastrophic failure (Exception from HRESULT: 0x8000FFFF (E_UNEXPECTED)) at MSComctlLib.IImages.Add(Object& Index, Object& Key, Object& Picture)

I want to create ListImage instance to use it in my TreeView ImageList. set background of TreeView but can't figure out how to make all this work.

looked in http://www.virtualsplat.com/tips/visual-basic-treeview-control.asp

Also tried using Resource file with images. This way getting invalid picture.

object ind = 1;
object key = "1";
inst.ListImages.Add(ref ind, ref key, Properties.Resource.folder_bmp);

P.S. Is there any other alternative to ImageToIPictureDisp? because this library is already obsolete and working only on 32bit processes

c#
.net
com
treeview
activex
asked on Stack Overflow Apr 10, 2020 by xurca

0 Answers

Nobody has answered this question yet.


User contributions licensed under CC BY-SA 3.0