共用方式為


屬性頁

用戶可以使用屬性頁來檢視和變更專案組態相依和獨立屬性。 [屬性頁] 按鈕會在 [屬性] 視窗或 方案總管 工具列上為提供所選物件之屬性頁檢視的物件啟用。 屬性頁是由環境所建立,而且適用於方案和專案。 不過,它們也可以提供給使用組態相依屬性的項目專案使用。 當專案內的檔案需要不同的編譯程式參數設定才能正確建置時,可能會使用這項功能。

使用屬性頁

如果已經顯示屬性頁,而且選取範圍會變更(例如,從方案變更為專案),則頁面中顯示的資訊會變更以顯示新選取範圍的屬性。 如果對象上沒有支援屬性頁的屬性,則屬性頁是空的。

如果選取多個物件,則屬性頁會顯示所有選取專案的屬集。 如果選取的專案不包含與組態相關的屬性,且按兩下 方案總管 工具列上的 [屬性頁] 按鈕,焦點會變更為 屬性視窗。 如需與 屬性視窗 和選取專案相關的詳細資訊,請參閱擴充屬性

如果多個對象顯示屬性,而且您在屬性頁面上變更值,即使物件一開始不同,而且頁面在個別物件的屬性顯示時為空白,物件的所有值都會設定為新的值。

Visual Studio 中提供兩種一般類型的 ProjectProperty Pages 對話方塊。 例如,在第一個Visual Basic專案中,屬性頁會使用字段格式顯示,如下列螢幕快照所示。 在第二個區段中,如本節稍後所示,屬性頁會裝載類似在 [屬性視窗] 中找到的屬性方格。

Visual Basic 屬性頁

具有欄位格式和樹狀結構的 [項目屬性頁] 對話方塊

[屬性頁] 對話框中的樹狀結構不會使用 IVsHierarchy來建置。 環境,根據 傳遞給 ISpecifyPropertyPages 它的層級名稱,以及 IVsPropertyPage 介面,建置它。

Visual Studio 屬性頁面上只有兩個最上層類別:

  • 通用屬性,顯示所選物件或物件的組態無關資訊。 因此,選取其中一個 [通用屬性] 子類別時,對話框頂端的 [組態]、[平臺] 和 [組態管理員] 選項無法使用。

  • 組態屬性,其中包含與方案或專案之偵錯、優化和建置參數相關的組態相關信息。

    您無法建立任何其他最上層類別,但您可以選擇不要在 的 IVsPropertyPage實作中顯示一個或另一個類別。 例如,如果對象沒有任何與組態無關的屬性,您可以選擇不顯示 [通用屬性] 類別。 如果您在 ISpecifyPropertyPages 組態物件中實作時 ISpecifyPropertyPages ,從專案的瀏覽物件和組態屬性實作 ,則會顯示 Common 屬性(實作 IVsCfgIVsProjectCfg和相關介面的物件)。

    最上層類別底下顯示的每個類別都代表個別的屬性頁。 對話框中提供的類別和子類別項目取決於您的 實作 ISpecifyPropertyPagesIVsPropertyPage

    IDispatch 選取容器中要顯示屬性之專案的物件會實 ISpecifyPropertyPages 作屬性,以列舉類別標識符的清單。 類別標識碼會當做變數傳遞至 , ISpecifyPropertyPages 並用來具現化屬性頁。 類別標識碼的清單也會傳遞至 , IVsPropertyPage 以在對話框左側建立樹狀結構。 屬性頁接著會將資訊傳回物件, IDispatch 該物件會實作 ISpecifyPropertyPages 並填入每個頁面的資訊。

    瀏覽物件的屬性會針對選取容器中的每個物件使用 IDispatch 來擷取。

    Help::DisplayTopicFromF1Keyword在 VSPackage 中實作可提供 [說明] 按鈕的功能。

    如需詳細資訊,請參閱 IDispatch MSDN 連結庫中的 和 ISpecifyPropertyPages

    範例中顯示的第二種屬性頁類型會裝載屬性方格的形式,如下列螢幕快照所示。

    VC 屬性頁

    [屬性頁] 對話框與屬性方格

    介面 IVSMDPropertyBrowserIVSMDPropertyGrid (在 vsmanaged.h 中宣告) 是用來在對話框或視窗中建立和填入屬性方格。

    項目的架構已從舊版Visual Studio大幅變更。 特別是,哪些專案作用中的概念已經變更。 在 Visual Studio 中,沒有使用中專案的概念。 在先前的開發環境中,使用中的專案是建置和部署命令的專案,無論內容為何,都會預設為 。 現在,方案會控制及仲裁哪些建置和部署命令會套用至哪些專案。

    先前的作用中項目現在會以三種不同的方式之一擷取:

  • 啟動專案

    您可以從方案的屬性頁指定專案或專案,當使用者按下 F5 或從 [建置] 功能選取 [執行] 時,就會啟動該專案或專案或專案。 這的運作方式與舊的使用中項目類似,因為它的名稱會以粗體字型顯示在 方案總管 中。

    您可以藉由呼叫 DTE.Solution.SolutionBuild.StartupProjects來擷取啟動專案做為自動化模型中的屬性。 在 VSPackage 中,您可以呼叫 get_StartupProjectget_StartupProject 方法。 IVsSolutionBuildManager 在 SID_SVsSolutionBuildManager 上以服務 QueryService 的形式提供。 如需詳細資訊,請參閱 專案組態物件方案組態

  • 作用中解決方案建置組態

    Visual Studio 具有作用中的解決方案組態,可藉由實 DTE.Solution.SolutionBuild.ActiveConfiguration作 在自動化模型中取得。 方案組態是一個集合,其中包含方案中每個專案的項目組態(每個專案可以在多個平臺上有多個組態,且名稱不同)。 如需解決方案屬性頁的詳細資訊,請參閱 方案組態

  • 專案目前已選取

    實作 GetCurrentSelection 方法來擷取選取的項目階層和項目專案。 從 DTE,您會使用 SelectedItems.SelectedItem.ProjectSelectedItems.SelectedItem.ProjectItem 方法。 核心 Visual Studio 檔中的標題下有範例程序代碼。

另請參閱