1个回答
展开全部
C# 能写二种代码,winform和asp.net
winform:
将你的多个文本框放到一个容器中,比如panel
List<string> lst = new List<string>();
foreach (Control c in panel1.Controls)
{
if (c.GetType() == typeof(TextBox))
{
lst.Add((c as TextBox).Text);
}
}
//lst中就是所有文本框中的值
asp.net:
如果是asp.net用上面的也行,用下面的也行
List<string> lst = new List<string>();
for (int i = 0; i < Panel1.Controls.Count;i++ )
{
lst.Add(((TextBox)(Panel1.FindControl("TextBox" + (i + 1)))).Text)
}
//FindControl("TextBox" + (i + 1))中的"TextBox" + (i + 1)就是panel中的TextBox1,TextBox2...控件
winform:
将你的多个文本框放到一个容器中,比如panel
List<string> lst = new List<string>();
foreach (Control c in panel1.Controls)
{
if (c.GetType() == typeof(TextBox))
{
lst.Add((c as TextBox).Text);
}
}
//lst中就是所有文本框中的值
asp.net:
如果是asp.net用上面的也行,用下面的也行
List<string> lst = new List<string>();
for (int i = 0; i < Panel1.Controls.Count;i++ )
{
lst.Add(((TextBox)(Panel1.FindControl("TextBox" + (i + 1)))).Text)
}
//FindControl("TextBox" + (i + 1))中的"TextBox" + (i + 1)就是panel中的TextBox1,TextBox2...控件
更多追问追答
追问
怎么把获取的值分别付给不同的变量呢?
比如我有3个文本框,名字是TextBox1,TextBox2,TextBox3.
同时放在名字叫groupBox1容器里面。
怎么将从三个文本框里面获取的信息验证是int类型的数据付给int a,b,c;
winform语言:
谢谢
追答
如果是这样的话就是这样写吧
int a,b,c;
foreach (Control c in groupBox1.Controls)
{
if (c.GetType() == typeof(TextBox))
{
int inttmp=0;
if (int.TryParse((c as TextBox).Text, out inttmp))
{
switch ((c as TextBox).Name)
{
case "TextBox1": a = inttmp; break;
case "TextBox2": b = inttmp; break;
case "TextBox3": c = inttmp; break;
}
}
}
}
//注意,为什么用swich,因为我肯定不了先循环出来的是textbox1,后出textbox2.......
//见意你不要用循环了,winform做这种的东西用循环还不如直接赋值好.
//int.TryParse(TextBox1.Text, out a)你就用这句直接赋吧,如果转换正确的话就是框中的值,不正确就是0
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询