FindControl在页面中查找控件

时间:2011-07-13 15:15:26

标签: asp.net master-pages findcontrol

我的aspx页面上有几个月的列表如下:

<ul>
    <li><a id="Month1" runat="server" class="Month1" href="#">Jan</a></li>
    <li><a id="Month2" runat="server" class="Month2" href="#">Feb</a></li>
    <li><a id="Month3" runat="server" class="Month3" href="#">Mar</a></li>
    <li><a id="Month4" runat="server" class="Month4" href="#">Apr</a></li>
    <li><a id="Month5" runat="server" class="Month5" href="#">May</a></li>
    <li><a id="Month6" runat="server" class="Month6" href="#">Jun</a></li>
    <li><a id="Month7" runat="server" class="Month7" href="#">Jul</a></li>
    <li><a id="Month8" runat="server" class="Month8" href="#">Aug</a></li>
    <li><a id="Month9" runat="server" class="Month9" href="#">Sep</a></li>
    <li><a id="Month10" runat="server" class="Month10" href="#">Oct</a></li>
    <li><a id="Month11" runat="server" class="Month11" href="#">Nov</a></li>
    <li><a id="Month12" runat="server" class="Month12" href="#">Dec</a></li>
</ul>

在我的代码中,如果列表项代表当前月份,我正试图在<a>标记上设置一个“已选定”类。

我已尝试执行以下操作来连接两个字符串以获取对页面上控件的引用:

CType(Page.FindControl("Month" & Now.Month), HtmlControl).Attributes("class") += " selected"

这似乎不起作用,所以我想知道是否因为页面在母版页内,所以我将代码更改为以下内容:

CType(Page.Master.FindControl("Content").FindControl("Month" & Now.Month), HtmlControl).Attributes("class") += " selected"

“内容”是母版页中ContentPlaceHolder的ID。

这仍然无效,所以有人可以告诉我我做错了什么吗?感谢。

修改 我刚刚意识到代码实际上是在ascx文件中,而不是我上面提到的aspx文件。

1 个答案:

答案 0 :(得分:4)

尝试Me

CType(Me.FindControl("Month" & Now.Month), HtmlControl).Attributes("class") += " selected"
相关问题