Hemos creado una página maestra que hereda de la clase principal asp.net. También tenemos controles ui que heredan de la clase de control asp.net ui estándar. Nuestra página maestra tiene una variable de miembro público. Necesitamos poder acceder a esa variable miembro desde los controles de la interfaz de usuario que usamos. Sin embargo, parece que no podemos lograrlo? ¿Es nuestra arquitectura lo que está mal? O la idea en sí misma: ¿el control del usuario tiene acceso a las variables de la página maestra?Obtener acceso a una página maestra personalizada desde un control de usuario
Respuesta
En términos generales, esto probablemente no es un buen patrón de diseño. Sin embargo, debería poder hacer algo como esto:
MyMasterType myMaster = this.Page.Master as MyMasterType;
if (myMaster != null)
{
myMaster.PublicProperty = value;
}
Aquí van: http://msdn.microsoft.com/en-us/library/xxwa0ff0.aspx
de: Accessing masterpage properties from child pages in ASP.net VB
Esta es la otra forma ... obtener acceso a un control desde la página maestra. Necesito tener acceso a la página maestra desde el control. – Bernard
Gotcha, no el mejor patrón de diseño, como dijo @etc. –
- 1. Acceso a la propiedad de la página maestra desde un control de usuario
- 2. ¿Cómo acceder a un control de usuario en una página maestra desde una página de contenido?
- 3. Acceso a User.Identity desde la página maestra
- 4. ¿Cómo hacer referencia a una página maestra desde un control de usuario?
- 5. Encontrar un control en una página con una página maestra
- 6. Acceder al método público de la página maestra desde el control de usuario/clase/página
- 7. ASP.NET - Acceso a los elementos de la página maestra desde la página de contenido
- 8. Acceso a las principales propiedades de la página maestra en un código de página maestra anidado detrás de
- 9. Acceso elemento del cuerpo de la página de contenido a través de una página maestra anidada
- 10. Validar un control de usuario ASP.NET desde su página principal
- 11. Silverlight: cómo navegar desde un control de usuario a una página normal?
- 12. Acceso a las propiedades de la página maestra desde las páginas secundarias en ASP.net VB
- 13. ¿Cómo asignar una página maestra a una página .aspx existente?
- 14. elementos de Acceso de un control de usuario
- 15. Cómo controlar elementos en una página maestra de asp.net desde la página secundaria
- 16. Acceso a las variables de la página maestra en la página secundaria en asp.net
- 17. Acceso al control principal desde el control secundario: ASP.NET C#
- 18. Agregar control de usuario a la página de pestaña
- 19. Acceso a UITextField en una UITableViewCell personalizada
- 20. Configuración del enlace a una DependencyProperty personalizada dentro de un control de usuario de WPF
- 21. ¿Cómo acceder al elemento .Net en la página maestra desde una página de contenido?
- 22. Cómo llamar a la función de página de contenido desde la página maestra
- 23. Cómo llamar a la función javascript de la página secundaria desde la página maestra javascript
- 24. ¿Puedo modificar la sección <head/> de una Página en .NET desde un Control de usuario sin runat = "server"?
- 25. página web de acceso IIS7 desde un ordenador remoto
- 26. ASP.NET Página maestra DefaultButton anular
- 27. FormsAuthentication.RedirectFromLoginPage en una página personalizada
- 28. Obtener ID del objeto Página maestra en la página de contenido
- 29. Acceder a la propiedad de la página principal desde el Control de usuario
- 30. ¿Sabe una página maestra qué página se está mostrando?
Yeh esto es lo que estamos yendo actualmente, pero simplemente se siente mal. Así que vamos a cambiar el control para tener una propiedad pública. La página contenedora inyectará el valor en esa propiedad al cargar. – Bernard
¿Hay alguna razón por la que inyectar el valor es mejor que tomarlo del control del usuario? Ya estaba inyectando y estaba buscando una manera de agarrarlo en su lugar, pero con mucho gusto reconsideraría si había una buena razón para hacerlo. –
Hay un par de razones: 1) El uso de una propiedad en la página maestra le permite establecer el valor en otros contextos (necesidades futuras) y 2) La arquitectura ya no está estrechamente acoplada. Si la página maestra toma los datos, la página maestra depende de que el control del usuario esté allí. – etc