Condividi tramite


pagine delle proprietà

Gli utenti possono visualizzare e modificare le proprietà dipendenti dalla configurazione del progetto e indipendenti tramite le pagine delle proprietà. Un pulsante Pagine delle proprietà è abilitato nella finestra Proprietà o nella barra degli strumenti Esplora soluzioni per gli oggetti che forniscono una visualizzazione pagina delle proprietà dell'oggetto selezionato. Le pagine delle proprietà vengono create dall'ambiente e sono disponibili per soluzioni e progetti. Tuttavia, possono anche essere resi disponibili per gli elementi del progetto che usano proprietà dipendenti dalla configurazione. Questa funzionalità può essere usata quando i file all'interno di un progetto richiedono impostazioni di cambio del compilatore diverse per la compilazione corretta.

Utilizzo delle pagine delle proprietà

Se una pagina delle proprietà è già visualizzata e la selezione cambia (ad esempio, da una soluzione a un progetto), le informazioni visualizzate nelle pagine cambiano per visualizzare le proprietà per la nuova selezione. Se nell'oggetto non sono presenti proprietà che supportano le pagine delle proprietà, la pagina delle proprietà è vuota.

Se sono selezionati più oggetti, nella pagina delle proprietà viene visualizzata l'intersezione delle proprietà per tutti gli elementi selezionati. Se l'elemento selezionato non contiene proprietà dipendenti dalla configurazione e viene fatto clic sul pulsante Pagine delle proprietà sulla barra degli strumenti Esplora soluzioni, lo stato attivo passa al Finestra Proprietà. Per altre informazioni relative alla Finestra Proprietà e alla selezione, vedere Estensione delle proprietà.

Se le proprietà vengono visualizzate per più oggetti e si modifica un valore in una pagina delle proprietà, tutti i valori per gli oggetti vengono impostati sul nuovo valore anche se inizialmente erano diversi e la pagina era vuota quando venivano visualizzate le proprietà di un singolo oggetto.

In Visual Studio sono disponibili due tipi generali di finestre di dialogo ProjectProperty Pages . Nel primo caso, per i progetti Visual Basic, ad esempio, le pagine delle proprietà vengono visualizzate usando un formato di campo, come illustrato nello screenshot seguente. Nella seconda, illustrata più avanti in questa sezione, la pagina delle proprietà ospita una griglia delle proprietà simile a quella presente nella finestra Proprietà.

Pagine delle proprietà di Visual Basic

Finestra di dialogo Pagine delle proprietà del progetto con formato di campo e struttura ad albero

La struttura ad albero nella finestra di dialogo Pagine delle proprietà non viene compilata utilizzando IVsHierarchy. L'ambiente, in base al nome del livello passato da ISpecifyPropertyPages e alle IVsPropertyPage interfacce, lo compila.

Nelle pagine delle proprietà di Visual Studio sono disponibili solo due categorie di primo livello:

  • Proprietà comuni, che visualizza informazioni indipendenti dalla configurazione per l'oggetto o gli oggetti selezionati. Di conseguenza, quando viene selezionata una delle sottocategorie Proprietà comuni, le opzioni Configurazione, Piattaforma e Configuration Manager nella parte superiore della finestra di dialogo non sono disponibili.

  • Proprietà di configurazione, che contiene informazioni dipendenti dalla configurazione relative ai parametri debug, ottimizzazione e compilazione per la soluzione o il progetto.

    Non è possibile creare altre categorie di primo livello, ma è possibile scegliere di non visualizzare una o l'altra nell'implementazione di IVsPropertyPage. Se, ad esempio, non si dispone di proprietà indipendenti dalla configurazione da visualizzare per un oggetto, è possibile scegliere di non visualizzare la categoria Proprietà comuni. Le proprietà comuni vengono visualizzate se ISpecifyPropertyPages vengono implementate dalle proprietà Browse object e Configuration dell'elemento quando si implementa nell'oggetto di configurazione (l'oggetto che implementa ISpecifyPropertyPagesIVsCfg, IVsProjectCfge le interfacce correlate).

    Ogni categoria visualizzata in una categoria di primo livello rappresenta una pagina delle proprietà separata. Le voci di categoria e sottocategoria disponibili nella finestra di dialogo sono determinate dall'implementazione di ISpecifyPropertyPages e IVsPropertyPage.

    IDispatch gli oggetti per gli elementi nel contenitore di selezione con proprietà da visualizzare nelle pagine delle proprietà implementano ISpecifyPropertyPages per enumerare un elenco di ID classe. Gli ID classe vengono passati come variabili a ISpecifyPropertyPages e vengono usati per creare un'istanza delle pagine delle proprietà. L'elenco di ID classe viene passato anche a IVsPropertyPage per creare la struttura ad albero a sinistra della finestra di dialogo. Le pagine delle proprietà passano quindi le informazioni all'oggetto IDispatch che implementa ISpecifyPropertyPages e inserisce le informazioni per ogni pagina.

    Le proprietà dell'oggetto Browse vengono recuperate usando IDispatch per ogni oggetto nel contenitore di selezione.

    L'implementazione Help::DisplayTopicFromF1Keyword nel pacchetto VSPackage offre la funzionalità per il pulsante ?

    Per altre informazioni, vedere IDispatch e ISpecifyPropertyPagesin MSDN Library.

    Il secondo tipo di pagine delle proprietà visualizzate negli esempi ospita una forma della griglia delle proprietà, come illustrato nello screenshot seguente.

    Pagine delle proprietà VC

    Finestra di dialogo Pagine delle proprietà con griglia delle proprietà

    Le interfacce IVSMDPropertyBrowser e IVSMDPropertyGrid (dichiarate in vsmanaged.h) vengono usate per creare e popolare la griglia delle proprietà all'interno di una finestra di dialogo o di una finestra.

    L'architettura dei progetti è cambiata notevolmente rispetto alle versioni precedenti di Visual Studio. In particolare, la nozione di progetto attivo è cambiata. In Visual Studio non esiste alcun concetto di progetto attivo. Negli ambienti di sviluppo precedenti, il progetto attivo era il progetto che compila e distribuisce i comandi per impostazione predefinita indipendentemente dal contesto. A questo punto, la soluzione controlla e arbitra i comandi di compilazione e distribuzione si applicano ai progetti.

    Quello che in precedenza era un progetto attivo viene ora acquisito in uno dei tre modi diversi:

  • Progetto di avvio

    È possibile specificare un progetto o progetti dalla pagina delle proprietà della soluzione che verrà avviata quando l'utente preme F5 o seleziona Esegui dal menu Compila. Ciò funziona in modo simile al vecchio progetto attivo nel senso che il suo nome viene visualizzato in Esplora soluzioni con carattere grassetto.

    È possibile recuperare il progetto di avvio come proprietà nel modello di automazione chiamando DTE.Solution.SolutionBuild.StartupProjects. In un VSPackage si chiamano i get_StartupProject metodi o get_StartupProject . IVsSolutionBuildManager è disponibile come servizio in QueryService SID_SVsSolutionBuildManager. Per altre informazioni, vedere Project Configuration Object and Solution Configuration Configuration.

  • Configurazione della compilazione della soluzione attiva

    Visual Studio ha una configurazione della soluzione attiva, disponibile nel modello di automazione implementando DTE.Solution.SolutionBuild.ActiveConfiguration. Una configurazione della soluzione è una raccolta che contiene una configurazione di progetto per ogni progetto nella soluzione (ogni progetto può avere più configurazioni, su più piattaforme, con nomi diversi). Per altre informazioni relative alle pagine delle proprietà della soluzione, vedere Configurazione della soluzione.

  • Progetto attualmente selezionato

    Implementare il GetCurrentSelection metodo per recuperare la gerarchia del progetto e l'elemento o gli elementi del progetto selezionati. Da DTE si userebbero i SelectedItems.SelectedItem.Project metodi e SelectedItems.SelectedItem.ProjectItem . È presente codice di esempio sotto tali intestazioni nei documenti di Visual Studio principali.

Vedi anche