0
我有一些行在服务器上运行,我想根据一些条件使它们中的一些变为粗体。我如何循环控制。我行似乎是这样的:通过HTML控制循环 - ASP.NET
<tr id="row1" runat="server"></tr>
<tr id="row2" runat="server"></tr>
<tr id="row3" runat="server"></tr>
我有一些行在服务器上运行,我想根据一些条件使它们中的一些变为粗体。我如何循环控制。我行似乎是这样的:通过HTML控制循环 - ASP.NET
<tr id="row1" runat="server"></tr>
<tr id="row2" runat="server"></tr>
<tr id="row3" runat="server"></tr>
尝试这样:
标记
<table id="table1" runat="server">
<tr id="row1" runat="server"><td>cell1</td></tr>
<tr id="row2" runat="server"><td>cell2</td></tr>
<tr id="row3" runat="server"><td>cell3</td></tr>
</table>
代码
using System.Web.UI.HtmlControls;
...
foreach (HtmlTableRow row in table1.Rows)
{
row.Style.Add("font-weight", "bold");
}
希望这有助于。
您应该使用Repeater
来输出内容。这有能力根据AlternatingItemTemplate
和ItemTemplate
更改行。
<asp:Repeater ID="repeater" runat="server"
onitemdatabound="repeater_ItemDataBound">
<HeaderTemplate>
<table>
</HeaderTemplate>
<ItemTemplate>
<tr runat="server" id="row" class="odd">
<td><%# Container.DataItem %></td>
</tr>
</ItemTemplate>
<AlternatingItemTemplate>
<tr runat="server" id="row" class="even">
<td><%# Container.DataItem%></td>
</tr>
</AlternatingItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
您也可以勾ItemDataBound事件和定制的外观和感觉的数据被写入。
protected void repeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item ||
e.Item.ItemType == ListItemType.AlternatingItem)
{
var data = e.Item.DataItem;
var index = e.Item.ItemIndex;
var row = e.Item.FindControl("row");
// do something with row control
}
}
如果您使用HTML表..尝试使用 –