2009-02-10 4 views
1

Я использую следующий класс для создания значка для пользовательской панели инструментов в Excel 2003 из моего C# код:C# + Excel 2003 - прозрачный пользовательский значок

public class ImageConverter : System.Windows.Forms.AxHost 
{ 
    public ImageConverter() : base("59EE46BA-677D-4d20-BF10-8D8067CB8B33") 
    { 
    } 

    public static stdole.IPictureDisp ImageToIpicture(System.Drawing.Image image) 
    {    
     return (stdole.IPictureDisp)ImageConverter.GetIPictureDispFromPicture(image); 
    } 
} 

Мой вопрос заключается в том, как сделать прозрачный значок? Все мои значки - прозрачные gif, но в Excel 2003 они имеют сплошной синий фон.

ответ

2

Вам нужно создать изображение маски и назначить его команде commandbarbutton.mask. См. http://support.microsoft.com/kb/286460/ для получения более подробной информации.