Controls.Add()在c#中做了什么?

时间:2015-06-29 14:52:43

标签: c# winforms

这段代码在c#winforms中究竟做了什么,你能否详细解释一下它是如何工作的?本声明中的控件是什么。

Controls.Add(btn); 

2 个答案:

答案 0 :(得分:2)

Controls是Control.ControlCollection类的一个实例,它表示一组Control对象,继承层次结构是

  

System.Windows.Forms.Control.ControlCollection

注意:

使用Add,Remove和RemoveAt方法,您可以从集合中添加和删除单个控件。您还可以使用AddRange或Clear方法添加或删除集合中的所有控件。

您可以通过将控件传递给Contains方法来确定Control是否是集合的成员。要获取集合中Control的位置的索引值,请将控件传递给IndexOf方法。可以通过调用CopyTo方法将集合复制到数组中。

使用其中一种方法从集合中删除控制的示例。

// Remove the RadioButton control if it exists. 
private void removeButton_Click(object sender, System.EventArgs e)
{
   if(panel1.Controls.Contains(removeButton))
   {
      panel1.Controls.Remove(removeButton);
   }
}

参考Control.ControlCollection Class

答案 1 :(得分:0)

Control表示Form的控件集合。 代码将名为btn的控件添加到表单中。

但是,除非必须,否则我建议不要动态添加控件。大多数控件都应该在表单对象的初始化过程中添加。