多多实践,多多思考,多多提问,优快云的Community还是非常值得关注和参与的!

本文分享了在ASP.NET开发中批量操作多个TextBox和Label控件的有效方法,包括使用循环遍历页面上的控件并根据类型进行相应操作,以及通过字符串拼接的方式找到对应的控件并设置属性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近自己实践得多了,于是陆陆续续碰到了许多开发之中的问题,记得几个月前尝试过在csdn的论坛提问,但终究没人理会,于是自己便灰心了,而那是又有个说法就是"简单的问题baidu google就有,困难的问题csdn也没人会解答" 这类说法......

这几天却给了我另外一个全新的感觉,csdn还是高手挺多的,或者说热心的人挺多的.

稍后给最近几个从csdn 的community解决的问题的总录

 Q1

假设页面上有TextBox1,TextBox2.....TextBox20
设一个按钮
要一次性清空这些TextBox.Text 如何才能用循环做到?

page.Controls
然后循环遍历..发现类型是TextBox就是清除

foreach (Control tb in form1.Controls)
            {
                if (typeof(TextBox) == tb.GetType())
                {
                    ((TextBox)tb).Text = "";
                }
            }

非常感谢各位!
知道是要枚举页面的控件,本来想当然地用
 foreach (Control obj in Page.Controls) ...呵呵
现在还清楚了typeof()的用法 谢谢rtsp(自命不凡)

 

Q2

在开发中遇到些疑惑 望众高手帮助解答

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

假设页面有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 小弟就不知所措了 希望大家来帮忙解答

A:

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 (mytb != null && mylb != null)

   {
     mylb.Text = mytb.Text;
   }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值