2012-01-27 48 views
0

我正在使用Word 2010插件來製作我們正在使用的單詞模板。我在頁面上有幾個書籤,可以使用插件中的各種嚮導來更改它們的內容。Microsoft Word VSTO Addin - 替換書籤而不刪除它們

我需要現在將圖像和表格添加到書籤中 - 並且這種方式很好,但是之後立即刪除書籤。我正在使用下面的代碼,將bookmark.Range作爲參數傳入。

添加表:

bookmark.Range.Tables.Add(bookmark.Range, rowCount, columnCount, ref _objectMissing, ref _objectMissing); 

添加圖片:

InlineShape shape = bookmark.Range.InlineShapes.AddPicture(path, ref _objectMissing, ref _objectMissing, ref _objectMissing); 

我需要能夠做到這一點,但不刪除書籤,這樣我就可以回去更換形象,如果用戶再次運行該向導。任何想法如何做到這一點將不勝感激!

回答

1

兩個InlineShape和表對象具有可用於恢復書籤,這樣的Range屬性:

// Keep the name of the bookmark 
string bookmarkName = bookmark.Name; 
// Insert your image, as before 
InlineShape shape = bookmark.Range.InlineShapes.AddPicture(path, ref _objectMissing, ref _objectMissing, ref _objectMissing); 
// Restore the bookmark 
Object range = shape.Range; 
yourDocumentVariable.Bookmarks.Add(bookmarkName, ref range); 
+0

優秀 - 感謝..這是非常有用的代碼! – 2012-01-31 08:02:52

+0

如果你有機會 - 你也可以看看這個嗎? http://stackoverflow.com/questions/9063832/microsoft-word-vsto-addin-inserting-multiple-tables-inside-a-text-frame – 2012-01-31 08:03:18