Implementazione delle pagine delle proprietà
La Creazione guidata pagina delle proprietà ATL non è disponibile in Visual Studio 2019 e versioni successive.
Le pagine delle proprietà sono oggetti COM che implementano l'interfaccia IPropertyPage
o IPropertyPage2
. ATL fornisce il supporto per l'implementazione delle pagine delle proprietà tramite la Creazione guidata pagina delle proprietà ATL nella finestra di dialogo Aggiungi classe.
Per creare una pagina delle proprietà con ATL:
Creare o aprire un progetto server di libreria di collegamento dinamico (DLL) ATL.
Aprire la finestra di dialogo Aggiungi classe e selezionare Pagina delle proprietà ATL.
Assicurarsi che la pagina delle proprietà abbia un threading di tipo apartment (poiché ha un'interfaccia utente).
Impostare il titolo, la descrizione (stringa doc) e file della Guida da associare alla pagina.
Aggiungere i controlli alla risorsa finestra di dialogo generata da usare come interfaccia utente della pagina delle proprietà.
Rispondere alle modifiche nell'interfaccia utente della pagina per eseguire la convalida, aggiornare il sito della pagina o aggiornare gli oggetti associati alla pagina. In particolare, chiamare IPropertyPageImpl::SetDirty quando l'utente apporta modifiche alla pagina delle proprietà.
Facoltativamente, eseguire l'override dei metodi
IPropertyPageImpl
attenendosi alle linee guida seguenti.Metodo IPropertyPageImpl Eseguire l'override quando si vuole... Note SetObjects Eseguire test di integrità di base sul numero di oggetti passati alla pagina e sulle interfacce supportate. Eseguire codice personalizzato prima di chiamare l'implementazione della classe di base. Se gli oggetti impostati non sono conformi alle aspettative, determinare l'esito negativo della chiamata il prima possibile. Attiva Inizializzare l'interfaccia utente della pagina (ad esempio, impostare i controlli della finestra di dialogo con i valori delle proprietà correnti degli oggetti, creare controlli in modo dinamico o eseguire altre inizializzazioni). Chiamare l'implementazione della classe di base prima del codice, in modo che la classe di base possa creare la finestra di dialogo e tutti i controlli prima di provare ad aggiornarli. Applica Convalidare le impostazioni delle proprietà e aggiornare gli oggetti. Non è necessario chiamare l'implementazione della classe di base, in quanto non esegue alcuna operazione oltre a tracciare la chiamata. Deactivate Eseguire la pulizia degli elementi correlati alla finestra. L'implementazione della classe di base elimina definitivamente la finestra di dialogo che rappresenta la pagina delle proprietà. Se è necessario eseguire la pulizia prima dell'eliminazione definitiva della finestra di dialogo, aggiungere il codice prima di chiamare la classe di base.
Per un'implementazione della pagina delle proprietà di esempio, vedere Esempio: Implementazione di una pagina delle proprietà.
Nota
Se si vuole ospitare controlli ActiveX nella pagina delle proprietà, è necessario modificare la derivazione della classe generata dalla procedura guidata. Sostituire CDialogImpl<CYourClass> con CAxDialogImpl<CYourClass> nell'elenco delle classi di base.