使用 vb.net 更改 <tr> 的 cssclass

Changing the cssclass for a <tr> using vb.net

我有这个,我想使用 vb.net 代码隐藏动态隐藏行。 我正在使用 VS2010.

这是我的 table:

<table>
    <tr id="FromDateRow">
        <td><asp:Label ID="FromDateLabel" runat="server">From date:</asp:Label></td>
        <td>
            <input type="text" id="txtFromDateF" class="needs-datepicker" />
            <asp:TextBox id="txtFromDate" CssClass="hidden" runat="server" />
        </td>
    </tr>
    <tr id="ToDateRow">
        <td><asp:Label ID="ToDateLabel" runat="server">To date:</asp:Label></td>
        <td>
            <input type="text" id="txtToDateF" class="needs-datepicker" />
            <asp:TextBox id="txtToDate" CssClass="hidden" runat="server" />
        </td>
    </tr>
    <tr>
        <td><asp:Label ID="CustomerCodeLabel" runat="server">Customer Code</asp:Label>:</td>
        <td><asp:DropDownList ID="CustomerCodeDropDownList" runat="server" AutoPostBack="False" /></td>
    </tr>
    <tr>
        <td><asp:Label ID="CINumberLabel" runat="server">CI Number</asp:Label>:</td>
        <td><asp:TextBox ID="CINumberTextBox" runat="server" /></td>
    </tr>
</table>

现在我想做这样的事情:

Select Case value
            Case DisplayDates.FromDate
                ToDateRow.CssClass = "hidden"
                FromDateRow.CssClass = ""
            Case DisplayDates.ToAndFromDate
                ToDateRow.CssClass = ""
                FromDateRow.CssClass = ""
            Case Else
                ToDateRow.CssClass = "hidden"
                FromDateRow.CssClass = "hidden"
        End Select

出于某种原因,我无法从我的代码隐藏中访问 ToDateRow 和 FromDateRow。

你必须

runat="server

在 table 和 tr 中标记以从后面的代码访问。

评论后:

ToDateRow.Attributes("class") = "CssClass";

您尝试在代码隐藏中引用的对象(相关的 tr 元素)需要定义为 runat="server"

如果对象实例的 CssClass 不是已知 属性,请尝试使用以下内容:

rowObject.Attributes.Add("class", "hidden");

好的,我解决了。 通过添加 runat="server" 我能够访问该行。 然后我找到了"visible"-属性。 现在它工作得很好。 感谢您的帮助