日期:2014-05-18  浏览次数:20420 次

循环页面所有textbox问题?并给其赋值!急死我了
代码如下

 public void duxx()
  {
  string []xix=new string[12];
  xix = ty.grxx();
  int i = 1;
  System.Web.UI.WebControls.TextBox a=new TextBox();
  foreach (Control txt in this.Page.Controls)
  {
  if (txt.GetType().Name=="TextBox")
  {
  System.Web.UI.WebControls.TextBox tb = (System.Web.UI.WebControls.TextBox)txt;
  if(i<xix.Length)
  {
  tb.Text = xix[i].ToString();
  i++;
  }
  else
  {
  break;
  }
  }

  }
   
  }

原来可以因为页面只有textbox,现在多了一个button就不行了。不知道是不是他的原因。请大家帮我看看


------解决方案--------------------
加个try看看。
你说的太笼统,无法判断。
------解决方案--------------------
你这个遍历了顶级Controls,因为对象层级的关系,你的TextBox可能并不在顶级Control里面
你要真想遍历全部的需要递归调用这个函数
------解决方案--------------------
递归呀
------解决方案--------------------
检查控件是否有子控件