Цикл по элементам управления HTML - ASP.NET - PullRequest
0 голосов
/ 07 сентября 2011

У меня есть несколько строк на сервере, и я хочу выделить некоторые из них жирным шрифтом в соответствии с некоторыми условиямиКак я могу пройти через элементы управления.Мои строки выглядят так:

<tr id="row1" runat="server"></tr>
<tr id="row2" runat="server"></tr>
<tr id="row3" runat="server"></tr>

Ответы [ 2 ]

1 голос
/ 07 сентября 2011

Попробуйте что-то вроде этого:

Разметка

<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");
}

Надеюсь, это поможет.

0 голосов
/ 07 сентября 2011

Вы должны использовать 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
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...