c# - TextBox的连接和属性

时间:2012-04-06 13:31:17

标签: c# asp.net arrays textbox web

我正在尝试使用这样的东西:

for (int i = 0; i < 40; i++)
{
    string x + i = TextBox + i.Text;
}

这有什么解决方案吗?我想使用i作为索引,就像我有一个TextBox数组一样。如何实现文本框的Text属性?

我想创建一个名为x1,x2,x3,x4 ...的字符串,以及x1 = TextBox1.Text的值。 但我不能:(

我有TextBox1,2,3 ... 40,我只想将他们的文本值传递给新的字符串或字符串列表ex。像x1 = TextBox1.Text,x2 = TextBox2.Text; ..... :(

2 个答案:

答案 0 :(得分:1)

您正试图从Text的集合中获取TextBox属性 - 顺便说一句,您还没有向我们展示您的获取方式。您甚至可能拥有数组TextBox

如果你这样做,你就会使用这样的代码(请注意,SomeCodeToGetTextBoxArray()需要由你定义):

TextBox[] myTextBoxes = SomeCodeToGetTextBoxArray();
var arrayLength = myTextBoxes.Length;
String[] x = new String[arrayLength];
for (int i = 0; i < arrayLength; i++)
{
    x[i] = myTextBoxes[i].Text;
}

答案 1 :(得分:1)

您要做的是通过它在运行时生成的字符串名称来引用局部变量,字段或属性。做你想做的事的唯一方法就是使用反射。

根据变量是本地作用域,字段成员还是属性成员,有不同的方法可以执行此操作。

反思 - LocalVariableInfo - FieldInfo - PropertyInfo


请注意,虽然这将是您的问题的答案,但最好使用数组(或List<T>)并使用索引。但是,如果不知道你想要做什么(不只是在你的小片段中),真的不可能知道。但是,阵列(或List<T>)更可能是更正确的解决方案。

相关问题