猿问

各位大侠帮帮忙

我是一个初学者,对有些问题掌握的还不是很熟练,希望你们帮帮忙,问题是这样的:

在一个网站的项目中在.aspx中先添加了一个TextBox和一个Panel,然后再在Panel中放了一个TextBox和Panel,接着再在Panel中再放一个TextBox,如何用递归的方法在每个TextBox中同时显示Hello World?

我对递归一直迷迷糊糊的所以希望各位大侠帮帮忙!谢谢了!


慕盖茨4494581
浏览 295回答 2
2回答

慕神8447489

这个问题,你应该注意控件树。foreach (Control c in this.Controls)并不是遍历所有控件,而是遍历最顶一级的控件。这样遍历了:textbox和panel。并没有遍历panel中的那个textbox和panel。你要用递归的方式。判断panel中是否还有子控件,有就深入。

Smart猫小萌

foreach (Control c in this.Controls)//遍历所有的控件            {                if (c is TextBox) //如果是TextBox                {                    TextBox txt = c as TextBox;//装换成TextBox                    txt.Text = "hello world";                }            }
随时随地看视频慕课网APP
我要回答