
3个回答
展开全部
1.给你要遍历的区域加个panel,这样后面遍历时效率就会高很多,不会整个页面去找控件
<asp:Panel ID="pnlEdit" runat="server">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
</asp:Panel>
2.在你所要执行的事件中:
foreach (Control item in pnlEdit.Controls)
{
if (item is TextBox) //是否是某种控件类型
{
TextBox tb = (TextBox)item;
Response.Write(tb.ClientID);//这里就可以取每个控件的ID,我不太明白你所指的控件名称是哪个,我理解的是指控件的客户端ID.你如果是要其他属性,也简单,控件都得到了,想取哪个属性就可以直接点出来.
}
}
<asp:Panel ID="pnlEdit" runat="server">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
</asp:Panel>
2.在你所要执行的事件中:
foreach (Control item in pnlEdit.Controls)
{
if (item is TextBox) //是否是某种控件类型
{
TextBox tb = (TextBox)item;
Response.Write(tb.ClientID);//这里就可以取每个控件的ID,我不太明白你所指的控件名称是哪个,我理解的是指控件的客户端ID.你如果是要其他属性,也简单,控件都得到了,想取哪个属性就可以直接点出来.
}
}
展开全部
因为是服务器控件,所以不能直接循环创建控件,只能在后台循环动态创建控件,你网上搜一下如何动态创建控件吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
foreach (System.Windows.Forms.Control control in this.Controls)
{
if (control is System.Windows.Forms.TextBox)
{
System.Windows.Forms.TextBox tb = (System.Windows.Forms.TextBox)control ;
}
}
即可遍历所有的TextBox控件
{
if (control is System.Windows.Forms.TextBox)
{
System.Windows.Forms.TextBox tb = (System.Windows.Forms.TextBox)control ;
}
}
即可遍历所有的TextBox控件
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询