我正在尝试在ASP.Net应用程序中的GridView中显示一个小进度条。我正在尝试使用ItemTemplate。
<ItemTemplate>
<table width="100%">
<tr>
<td style="width: 75%; background-color: red"></td>
<td style="width: 25%; background-color: green" ></td>
</tr>
</table>
</ItemTemplate>
我想根据行中某些值的计算来设置宽度百分比。
可以用Eval以某种方式完成吗?或者我需要做一些代码吗?
答案 0 :(得分:1)
您可以尝试以下方法(下面的样本计算):
<td style='<%# string.Format("width: {0}%; background-color: red", (int)Eval("Width") / 100) %>'></td>
但为了便于阅读,最好将整个字符串结构移到后面的代码中,并在页面上调用相应的方法。
更新。至于代码隐藏方法,以下是如何完成的。定义一个方法,该方法将执行适当的计算并返回字符串:
protected string GetCellStyle(int width)
{
return string.Format("width: {0}%; background-color: red", width / 100);
}
使用相同的数据绑定语法调用它:
<td style='<%# GetCellStyle((int)Eval("Width")) %>'></td>