Microsoft Word VSTO加载项-替换书签而不删除书签
本文关键字:书签 删除 替换 Word VSTO 加载项 Microsoft | 更新日期: 2023-09-27 18:21:39
我正在为我们正在使用的单词模板开发Word 2010插件。我在页面中有几个书签,它们的内容可以使用插件中的各种向导进行更改。
我现在需要将图像和表格添加到书签中——这很好,但之后会立即删除书签。我正在使用以下代码,传入书签。范围作为参数。
添加表格:
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);
我需要能够在不删除书签的情况下完成此操作,这样,如果用户再次运行向导,我就可以返回并替换图像。任何关于如何做到这一点的想法都将不胜感激!
InlineShape和Table对象都有一个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);