¿Cómo puedo evitar el hecho de que no puedo poner un bloque de código en un archivo de máscara?

StackOverflow https://stackoverflow.com/questions/464052

Pregunta

Tengo una página asp.net que estoy escribiendo y estoy perplejo por este problema. Tengo 3 DetailViews que enlazo con LINQ. La encuadernación funciona muy bien. Ahora, tengo un archivo Skin que quiero usar para diseñar los DV, y se ve así.

<asp:DetailsView SkinID="blogViews" runat="server" Width="100%" CssClass="post" 
AutoGenerateRows="False" GridLines="None" FooterStyle-CssClass="comments" FooterStyle-Height="50px">
<Fields>
    <asp:BoundField DataField="blog_title" ShowHeader="False" ItemStyle-CssClass="title" ItemStyle-Font-Size="X-Large"/>
    <asp:BoundField DataField="blog_content" HtmlEncode="False" ShowHeader="False" ItemStyle-CssClass="entry" />
</Fields>

Ahora el problema es que necesito agregar un templateField para mostrar algunos datos, y lo necesito entre los campos de título y contenido. Al usar un campo de plantilla, necesito hacer un:

Eval("blog_datetime")

y algunos otros. Desafortunadamente, el archivo Skin no permite bloques de código. No puedo agregar el campo de plantilla a la página aspx en sí, porque coloca templateField en la parte inferior de DetailsView. Supongo que lo que pregunto es:

¿Cómo puedo evitar el hecho de que no puedo poner un bloque de código en un archivo de máscara?

¿Fue útil?

Solución

Me pregunto si sería mejor crear un control personalizado para diseñar estas vistas de detalles.

Los archivos de máscaras son para modificar estilos más que el comportamiento y el enlace.

Un control personalizado le permitiría hacer todo esto y obtener el beneficio del diseño compartido para las tres vistas de datos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top