選取項目,並在 IDE 中的貨幣
Visual Studio整合式的開發環境 (IDE) 會維護使用者的相關資訊目前選取的物件使用選取內容。 與選取項目內容中,VSPackages 可以參與兩種方式追蹤的貨幣:
藉由將 ide VSPackages 的貨幣資訊的傳播。
藉由監看使用者的 IDE 中的 [目前使用中選取項目。
選取範圍內容
Visual Studio IDE 全域追蹤的 IDE 中它自己的全域選擇內容物件的貨幣。 下表顯示組成選取範圍內容的項目。
項目 |
描述 |
---|---|
目前的階層架構 |
通常是目前的任務或資源。 NULL 目前階層架構會指出目前整個解決方案。 |
目前的項目識別碼 |
選取的項目內目前的階層架構 ; 在 [專案] 視窗中的多重選取時,可以有多個目前的項目。 |
目前的SelectionContainer |
含有一或多個物件的 [屬性] 視窗應該會顯示內容。 |
此外,環境會維護兩個全域清單:
一份使用中的 UI 命令識別碼
目前使用中的項目類型的清單。
視窗類型和選取範圍
Visual Studio IDE 會將視窗分成兩種一般類型:
階層類型視窗
框架視窗,例如 [工具] 和 [文件視窗
IDE 會針對每個視窗類型以不同的方式追蹤貨幣。
最常見的 [專案類型] 視窗是 [方案總管],用來控制 IDE。 專案類型視窗追蹤通用階層和項目識別碼的通用的選取項目內容中,並且仰賴使用者的選取項目,以判斷目前的階層架構的視窗。 對於專案類型的視窗,環境會提供通用服務SVsShellMonitorSelection、 到哪一個 VSPackages 可以監視目前開啟的項目值。 瀏覽環境中的屬性會受到這個通用的服務。
框架視窗,相反地,會使用框架視窗內 DocObject 要推入的 SelectionContext 值 (SelectionContainer/階層/項目識別碼三)。 . 框架視窗使用服務SVsShellMonitorSelection為上述目的。 DocObject 可以推動只有值選取容器,並保留階層架構的本機值,並沒有變更項目識別碼,跟一般的 MDI 子文件。
事件] 及 [貨幣
兩種類型的事件,可能會發生影響環境的概念的貨幣:
傳播到全域層級,並變更視窗框架的選取項目內容的事件。 這種事件的範例包含 MDI 子視窗開啟,通用的工具視窗被開啟或開啟一個專案類型的工具視窗。
變更項目追蹤視窗框架的選取項目內容中的事件。 範例包括變更選取範圍內的 DocObject,或變更專案類型] 視窗中的選取範圍。