Como las clases parciales de control del usuario sensibilizar sobre los controles declarados en la clase base?
-
24-09-2019 - |
Pregunta
¿Hay que hacer algo especial para tener clases parciales ASP.NET conscientes de los controles que se declaran en las clases base de nuestro control de usuario? Las clases parciales mantienen las declaraciones de generación de controles en la clase base que significan los controles en la clase base quedar ocultos y son nulas.
Solución
El atributo CodeFileBaseClass se puede aplicar a @Page o < a href = rel => @ declaraciones "http://msdn.microsoft.com/en-us/library/d19c0t4b.aspx" "noreferrer nofollow" control para hacer que el ASP.NET runtime consciente de los controles declarados en su clase base.
MSDN describe como sigue:
Especifica el nombre del tipo de una clase base para una página y su asociado clase de código subyacente.
Este atributo es opcional, pero cuando se utiliza la CodeFile atributo debe ser también presente. Utilice este atributo cuando se desee implementar un escenario compartido, donde se definen los campos comunes (y eventos opcionalmente, asociados) en una clase base para hacer referencia a los controles declaró en una página Web. Debido a la ASP.NET modelo de generación de código, si definido los campos de una clase base sin necesidad de utilizar este atributo, por lo Definiciones nuevo miembro tiempo de compilación serían generadas para los controles declaró en la página Web (dentro de una separar talón de clase parcial), y su escenario deseado no funcionaría. Pero si se utiliza el CodeFileBaseClass atribuir a asociar la clase base con la página y hacer su clase parcial (su nombre se asigna a Hereda el atributo y su fuente archivo se hace referencia por la CodeFile atributo) heredan de la base de clase, a continuación, los campos en la base clase será capaz de hacer referencia a la controles de la página después de código generación .