Pergunta

Eu tenho um linkbutton ASP.NET dentro do ASP.NET Repeater Control, que renderiza vários botões de link. Quero definir o estilo de todo e qualquer linkbutton dinamicamente.

estou tentando

style="color:#6D7B8D;font-size:<%# DataBinder.Eval(Container.DataItem, "Title")%>;"

Mas estou recebendo o erro "A tag do servidor não está bem formada".

Alguma ideia?

Foi útil?

Solução

Meu entendimento é que o uso de tags de servidor para atributos exige que a tag do servidor seja usada para o inteira Valor do atributo. Tente mudar para isso:

style='<%# "color:#6D7B8D;font-size:" + DataBinder.Eval(Container.DataItem, "Title") + ";" %>'

Observe como todo o atributo de estilo está sendo construído no código C# entre as tags do servidor.

Outras dicas

Escreva assim:

style='color:#6D7B8D;font-size:<%# DataBinder.Eval(Container.DataItem, "Title")%>;'

Com citações únicas em vez de citações duplas em torno do estilo

Remover

<%# Databinder.Eval(Container.DataItem, "Title") %>

Para:

Text='<%# Databinder.Eval(Container.DataItem, "Title") %>'

Também podemos usar o operador Trenary dentro dele- para personalizar o tamanho da fonte

style='<%# "color:#6D7B8D;font-size:"Convert.ToInt32(DataBinder.Eval(Container.DataItem, "fontSize"))<5?"40":"30");" %>'
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top