2017-08-28 86 views
0

我計劃開發一個用於處理文檔書籤的Visual Studio擴展。基本上,我希望能夠列出現有的書籤,創建新的書籤並刪除任何現有的書籤,以用於整個解決方案。如何在Visual Studio擴展中列出/操作文檔書籤?

在那裏我找到了書籤操作能力的唯一地方是the TextSelection interface:它有ClearBookmarkSetBookmarkPreviousBookmarkNextBookmark方法;但這些似乎並不是我所需要的,因爲它們僅用於單個文本選擇。

那麼,是否有任何其他(解決方案)的方式來處理Visual Studio擴展內的文檔書籤?或者我錯過了一些東西,這些現有的方法實際上提供了我需要的功能?

回答

1

存儲在文件名爲.suo書籤信息的所有書籤的值)。所以你可以用IVsPersistSolutionOpts Interface讀取.suo文件。它包含ReadUserOptions(IStream,String),SaveUserOptions(IVsSolutionPersistence)和WriteUserOptions(IStream,String)兩種方法。您可以使用它們來管理解決方案中的書籤。

+0

謝謝!我發現.suo文件中的數據被讀取爲鍵/值對,您知道哪些鍵涉及書籤管理嗎? – Konamiman

+0

您可以使用一些第三方工具,如結構化存儲查看器(http://www.mitec.cz/ssv.html)來查看詳細的書籤信息 –

1

下面的文章提供了一個完整的示例,它可以通過創建一個表示書籤的Bookmark類和一個保存字典的BookmarkManager類來列出和管理所有書籤(書籤號是關鍵字,Bookmark類的對象是這是通過訪問公共財產書籤

https://www.codeproject.com/Articles/61915/Numbered-Bookmarks-Visual-Studio-Extension-VSX

+0

謝謝!該項目以及類似的項目,如[SergeyVinyar的VSBookmarks](https://github.com/SergeyVinyar/VSBookmarks),都是關於創建一個全新的書籤引擎。相反,我有興趣管理Visual Studio中內置的書籤引擎。 – Konamiman