【发布时间】:2014-05-12 23:48:35
【问题描述】:
我在一个 c# web 应用程序(不是 winform)中有 30 个现有文本框(TextBox...TextBox30),我想创建一个数组。
TextBox[] tb = new TextBox[30];
然后将所有 30 个现有按钮分配给该数组。
有没有比逐个添加更快的方法?
tb[0]=TextBox1;
【问题讨论】:
-
好吧,你可以动态创建它们而不是手动
我在一个 c# web 应用程序(不是 winform)中有 30 个现有文本框(TextBox...TextBox30),我想创建一个数组。
TextBox[] tb = new TextBox[30];
然后将所有 30 个现有按钮分配给该数组。
有没有比逐个添加更快的方法?
tb[0]=TextBox1;
【问题讨论】:
TextBox[] tb = { TextBox1, TextBox2, ... };
【讨论】:
var tb = Enumerable.Range(1, 30).Select(i => Page.FindControl("TextBox" + i) as TextBox).ToArray(); 的操作
或许能帮上忙:
var txtBox = Form1.Controls.OfType<TextBox>().ToArray();
for(i = 0; i < txtBox.Count; i++)
{
// do stuff...
}
我的语法可能有点不对...
【讨论】:
SelectedIndex() 用于单选按钮的组框。
我个人更喜欢使用list 而不是array,因为我比较懒。
List<TextBox> txtBoxs = new List<TextBox>();
foreach (Control ctl in splitContainer1.Panel2.Controls){
TextBox txtBox = ctl as TextBox;
if (txtBox != null)
{
txtBoxs.Add(txtBox);
}
}
【讨论】: