如何使用AssociatedControlID获取控件的类型

时间:2013-10-01 09:10:26

标签: c# asp.net

我的设计如下:

<asp:Label ID="lbl1" runat="server" AssociatedControlID="ddl1">
</asp:Label>
<asp:DropDownList ID="ddl1" runat="server"></asp:DropDownList>
像这样我有几个标签,我想找出与我的表单上的每个标签相关联的控件类型。是否可以获得控件类型?

2 个答案:

答案 0 :(得分:0)

您可以使用FindControl并传递AssociatedControlID

Control c = FindControl(lbl1.AssociatedControlID);
if(c == null) // Not found
else
{
    Type t = c.GetType(); // Gets the type of the control
    if(c is TextBox) // I'm a textbox
    else if(c is DropDownList) // I'm a DropdownList
}

答案 1 :(得分:0)

在代码背后尝试这个:

foreach (Label lbl in this.Page.Form.Controls.OfType<Label>()) 
{

}