读书人

遍历有规律命名的页面控件,内详,非常感

发布时间: 2011-12-28 22:45:21 作者: rapoo

遍历有规律命名的页面控件,内详,非常感谢
在开发中遇到些疑惑 望众高手帮助解答

这里设计个简单范例 帮助说明问题

假设页面有10来个TextBox控件
命名方式tb1 tb2 tb3....tb10

页面又有10来个Label控件
命名方式lb1 lb2 lb3...lb10

设计一个方法
public void TextToLabel(TextBox tb , Label lb)
{
lb.Text = tb.Text
}

请问如何才最优效率实现?
总不见得用
TextToLabel(tb1,lb1);
TextToLabel(tb2,lb2);
...
TextToLabel(tb10,lb10);

如何用循环来实现?比如用for(int i=1;i <=11;i++)
但是控件名不能用i来代替啊

简单的遍历能用
foreach (Control tb in form1.Controls)
{
if (typeof(TextBox) == tb.GetType())
...
}来解决
但这个只是对这个要处理的TextBox本身的一些操作 要牵涉到其他控件比如说id序号相同的Label 小弟就不知所措了 希望大家来帮忙解答

[解决办法]
for(int i=0;i <=10;i++)
{
TextBox mytb = new TextBox();
Label mylb = new Label();
mytb = (TextBox)this.FindControl( "tb " + i.toString());
mylb = (Label)this.FindControl( "lb " + i.toString());
if (mytd != null && mylb != null)
{
mylb.Text = mytb.Text;
}
}

读书人网 >asp.net

热点推荐