Como posso contornar o fato de que eu não posso colocar um bloco de código em um arquivo de pele?

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

Pergunta

Eu tenho uma página asp.net que estou escrevendo e eu estou perplexo com este problema. Eu tenho 3 DetailViews que eu ligar com LINQ. As obras de ligação grande. Agora, eu tenho um arquivo de pele que eu quero usar para o layout dos DVs, e parece que isso.

<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>

Agora, o problema é que eu preciso adicionar um TemplateField para exibir alguns dados, e eu preciso dele entre o título e campos de conteúdo. Usando um campo de modelo, eu preciso fazer um:

Eval("blog_datetime")

e alguns outros. Infelizmente, o arquivo de pele não permite que blocos de código. Eu não posso adicionar o campo do molde para a página aspx em si, porque coloca o TemplateField na parte inferior do DetailsView. Acho que o que estou pedindo é:

Como posso contornar o fato de que eu não posso colocar um bloco de código em um arquivo de pele?

Foi útil?

Solução

Eu estou querendo saber se você seria melhor criar um controle personalizado para colocar para fora esses detalhes vistas?

arquivos de pele são para modificar estilos mais de comportamento e de ligação.

Um controle personalizado que permitem que você faça tudo isso e obter o benefício de esquema compartilhada para as três exibições de dados.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top