最近我在研究ASP.NET中,发现在对模版列进行输出时,可以这样做。有的时候要对模版列的某些输出进行格式化输出,比如
Quarter | P & L Statement |
Q1 2001 | Revenue: | 450391000 | Profit: | 102200111 | |
Q2 2001 | Revenue: | 391000 | Profit: | -154950 | |
Q3 2001 | Revenue: | -150938000 | Profit: | -902200 | |
这个表里,如果要对Revenue,profit为负数时,予以红色显示,可以这样做:
<asp:datagrid runat="server" AutoGenerateColumns="False"> <Columns> <asp:BoundColumn HeaderText="Quarter" DataField="Quarter" /> <asp:TemplateColumn HeaderText="P & L Statement"> <ItemTemplate> <table border="0"> <tr> <td align="right"><b>Revenue:</b></td> <td><%# MakeNegRed(DataBinder.Eval(Container.DataItem, "Revenue")) %></td> </tr> <tr> <td align="right"><b>Profit:</b></td> <td><%# MakeNegRed(DataBinder.Eval(Container.DataItem, "Profit")) %></td> </tr> </table> </ItemTemplate> </asp:TemplateColumn> </Columns> </asp:datagrid>
其中,MakeNegRed是个函数,可以这样写,返回的是HTML。
Function MakeNegRed(input as String) as String 'See if the number is less than 0 If Int32.Parse(input) < 0 then Return "<font color=""red"">" & input & "</font>" Else Return input End If End Function
哈哈,这样就达到效果拉。
本文地址:http://com.8s8s.com/it/it44595.htm