在asp.net控件的style属性中使用DataBinder.Eval()

时间:2010-08-08 14:59:08

标签: asp.net css repeater databinder

我在asp.net转发器控件中有一个asp.net链接按钮,它呈现多个链接按钮。我想动态设置每个链接按钮的样式。

我正在尝试

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

但是我得到“服务器标签格式不正确”错误。

有什么想法吗?

4 个答案:

答案 0 :(得分:24)

我的理解是,对属性使用服务器标记需要将服务器标记用于整个属性值。尝试将其更改为:

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

注意如何在服务器标签之间的C#代码中构造整个样式属性。

答案 1 :(得分:4)

这样写:

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

使用单引号而不是样式

附近的双引号

答案 2 :(得分:0)

删除

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

要:

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

答案 3 :(得分:0)

我们也可以在其中使用三元运算符来自定义字体大小

style='<%# "color:#6D7B8D;font-size:"Convert.ToInt32(DataBinder.Eval(Container.DataItem, "fontSize"))<5?"40":"30");" %>'