asp.netcssrepeaterdatabinder

Using DataBinder.Eval() in style attribute of an asp.net control


I've a asp.net linkbutton inside asp.net repeater control which renders multiple link buttons. I want to set the style of each and every linkbutton dynamically.

I'm trying

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

But i'm getting "The server tag is not well formed" error.

Any ideas?


Solution

  • My understanding is that using server tags for attributes requires that the server tag be used for the entire attribute value. Try changing it to this:

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

    Notice how the entire style attribute is being constructed in C# code between the server tags.