首页 > 学院 > 开发设计 > 正文

C#遍历窗体控件(原文出自http://www.liangshunet.com/ca/201403/286434593.htm)

2019-11-14 13:45:02
字体:
来源:转载
供稿:网友

 一、C#遍历窗体控件

  主要遍历属于窗体(Form)的控件(Controls),假如窗体中有 Panel、Button 和 TextBox 控件,遍历代码如下:

/// <summary>  /// Winform C#遍历窗体控件  /// </summary>  /// <param name="ctrlName">控件名称</param>  public void ForeachFormControls(string ctrlName)  {    foreach (Control ctrl in this.Controls)    {      if (ctrl is Panel)      {        //相关操作代码        ctrl.BackColor = Color.Aquamarine;      }      else if (ctrl is Button)      {        ctrl.ForeColor = Color.RoyalBlue;      }      else if (ctrl is TextBox)      {        ctrl.Text = null;      }      //根据控件名称找某个控件      if(ctrl.Name.Equals(ctrlName))      {        vctrl.Name = string.Empty;      }    }  }

上面的代码,只是根据控件的类型和传递的控件名称进行了一些随意操作,可以根据具体需求把它改为所需操作。

  二、C# Winform遍历控件之遍历 Panel 中的子控件

  遍历方法跟遍历窗体中的控件相同,只不过 this 要改为 Panel 的名称,假如 Panel控件中只包含 Button 和 TextBox 子控件,代码如下:

/// <summary>  /// C#遍历子控件  /// </summary>  /// <param name="ctrlName">控件名称</param>  public void ForeachPanelControls(string ctrlName)  {    foreach (Control ctrl in panel1.Controls)    {      if (ctrl is Button)      {        if (ctrl.Name.Equals(ctrlName))          ctrl.ForeColor = Color.RoyalBlue;        else          ctrl.ForeColor = Color.SkyBlue;      }      else if (ctrl is TextBox)      {        if (ctrl.Name.Equals(ctrlName))          ctrl.Name = "当前值";        else          ctrl.Text = null;      }    }  }

 


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表