Очень сложное решение ... повезло найти его здесь
Сначала добавить атрибут loadImage на вкладку CustomUI,
Затем для упрощения, добавьте этот внутренний класс
internal class PictureConverter : AxHost
{
private PictureConverter() : base(String.Empty) { }
static public stdole.IPictureDisp ImageToPictureDisp(Image image)
{
return (stdole.IPictureDisp)GetIPictureDispFromPicture(image);
}
static public stdole.IPictureDisp IconToPictureDisp(Icon icon)
{
return ImageToPictureDisp(icon.ToBitmap());
}
static public Image PictureDispToImage(stdole.IPictureDisp picture)
{
return GetPictureFromIPicture(picture);
}
}
Далее добавьте определение функции loadImage,
public IPictureDisp Ribbon_LoadImage(string imageName)
{
return PictureConverter.ImageToPictureDisp((Bitmap)Resources.ResourceManager.GetObject(imageName));
}