2011-08-15 31 views
1

將顯示標準Outlook圖標的按鈕添加到功能區非常簡單。將按鈕的屬性OfficeImageId設置爲已知的ID(例如「EncryptMessage」),就完成了。有關可能值的完整列表,請參閱Office 2010 Add-In: Icons GalleryOutlook 2010 VSTO - 表單區域中的標準辦公室圖標

現在我的問題是,我可以在窗體區域實現同樣的事情嗎?我的意思是,例如添加一個顯示標準Office圖標的PictureBox?顯然沒有OfficeImageId屬性,但也許有人知道一個解決方法。

回答

3

您提供的鏈接轉到Word 2010文檔。我一直在使用帶有功能區擴展功能的Excel 2007文檔,其中顯示了所有內置圖標(「其他人下載」部分中的「2007 Office System加載項:圖標庫」)。在此工作簿中,您可以單擊圖標和VBA的形式顯示了16x16和勇敢32x32的圖標

這只是一個VBA形式有兩個圖片框的代碼如下:。

Sub OnAction(control As IRibbonControl, id As String, index As Integer) 
    If (control.Tag = "large") Then 
     id = Strings.Mid(id, 3) 
    End If 

    Dim form As New ControlInfoForm 
    form.nameX.Caption = "imageMso: " & id 
    Set form.Image1.Picture = Application.CommandBars.GetImageMso(id, 16, 16) 
    Set form.Image2.Picture = Application.CommandBars.GetImageMso(id, 32, 32) 
    form.Show 
End Sub 

我希望這可以幫助你獲得圖片

+0

謝謝,這看起來很有希望,我今天下午試一試。 – doogu

+0

這樣做的竅門。非常感謝。我也偶然發現了這個[鏈接](http://social.msdn .microsoft.com /論壇/ EN-US/VSTO /線程/ db1100b7-FACA-4361-822c-b05f08cfe3f5 /)。在那裏他們討論幾乎相同的事情,但另外有人提供了一個方便的IPictureDisp圖像轉換方法(以防萬一有人也需要這樣做)。 – doogu