Implementar páginas de propiedades
El Asistente para páginas de propiedades ATL no está disponible en Visual Studio 2019 ni en versiones posteriores.
Las páginas de propiedades son objetos COM que implementan la interfaz IPropertyPage
o IPropertyPage2
. ATL proporciona compatibilidad con la implementación de páginas de propiedades a través del Asistente para páginas de propiedades ATL en el cuadro de diálogo Agregar clase.
Para crear una página de propiedades mediante ATL:
Cree o abra un proyecto de servidor de biblioteca de vínculos dinámicos (DLL) ATL.
Abra el cuadro de diálogo Agregar clase y seleccione Página de propiedades ATL.
Asegúrese de que su página de propiedades es un subproceso de tipo apartamento (ya que tiene una interfaz de usuario).
Establezca el título, la descripción (cadena de documento) y el archivo de ayuda que se van a asociar a su página.
Agregue controles al recurso de cuadro de diálogo generado que actuará como interfaz de usuario de su página de propiedades.
Responda a los cambios en la interfaz de usuario de su página para realizar la validación y actualizar el sitio de la página o los objetos asociados a esta. En concreto, llame a IPropertyPageImpl::SetDirty si el usuario realiza cambios en la página de propiedades.
De forma opcional, invalide los métodos
IPropertyPageImpl
mediante las instrucciones enumeradas a continuación.Método IPropertyPageImpl Invalide si desea... Notas SetObjects Realizar comprobaciones de estado básicas del número de objetos que se pasan a su página y las interfaces que admiten. Ejecute su propio código antes de llamar a la implementación de clase base. Si los objetos que se establecen no cumplen sus expectativas, debe anular la llamada lo antes posible. Activar Inicializar la interfaz de usuario de su página (por ejemplo, establezca controles de diálogo con valores de propiedades actuales desde objetos, cree controles de forma dinámica o realice otras inicializaciones). Llame a la implementación de clase base antes que a su código para que la clase base pueda crear la ventana de diálogo y todos los controles antes de que intente actualizarlos. Aplicar Validar la configuración de propiedades y actualizar los objetos. No es necesario llamar a la implementación de clase base, ya que no hace nada aparte del seguimiento de la llamada. Desactivar Limpiar los elementos relacionados con ventanas. La implementación de clase base destruye el cuadro de diálogo que representa la página de propiedades. Si necesita limpiar antes de que se destruya el cuadro de diálogo, debe agregar su código antes de llamar a la clase base.
Para obtener una implementación de página de propiedades de ejemplo, consulte Ejemplo: Implementar una página de propiedades.
Nota:
Si desea hospedar controles ActiveX en su página de propiedades, tendrá que cambiar la derivación de su clase generada por el asistente. Reemplace CDialogImpl<CYourClass> porCAxDialogImpl<CYourClass> en la lista de clases base.