如何获取面板中文本框的值?
How to get value of Textboxes in Panel?
我的程序在 panel1 中创建文本框。我可以在运行时给他们一个值。但是我不能从左到右的文本框中取值。textboxes look like this 我想取 5、215、409、607 之类的值。我的英语很糟糕,对此深表歉意。请有人可以帮助我:(
您是否在文本框对象上尝试过 Text 属性。假设您的文本框是 TextBox1 那么您需要使用从文本框“TextBox1.Text”?
中读取值
如果需要了解更多,可以访问MSDN Help for textbox
即使不使用文本框的名称,您也可以使用 LINQ 轻松获得 Text
值。
这是一个例子:
// creating a quick test-form with a panel:
var frm = new Form();
var pnl = new Panel() {Dock = DockStyle.Fill};
frm.Controls.Add(pnl);
for(int i = 1; i<10; i++)
{
var tb = new TextBox() {Location = new Point(i*100, 15), Text = i.ToString(), Width = 80};
pnl.Controls.Add(tb);
}
// get Texts from left to right
var textList = pnl.Controls.
OfType<TextBox>().
OrderBy(tb => tb.Left).
Select(tb=> tb.Text).
ToList();
我的程序在 panel1 中创建文本框。我可以在运行时给他们一个值。但是我不能从左到右的文本框中取值。textboxes look like this 我想取 5、215、409、607 之类的值。我的英语很糟糕,对此深表歉意。请有人可以帮助我:(
您是否在文本框对象上尝试过 Text 属性。假设您的文本框是 TextBox1 那么您需要使用从文本框“TextBox1.Text”?
中读取值如果需要了解更多,可以访问MSDN Help for textbox
即使不使用文本框的名称,您也可以使用 LINQ 轻松获得 Text
值。
这是一个例子:
// creating a quick test-form with a panel:
var frm = new Form();
var pnl = new Panel() {Dock = DockStyle.Fill};
frm.Controls.Add(pnl);
for(int i = 1; i<10; i++)
{
var tb = new TextBox() {Location = new Point(i*100, 15), Text = i.ToString(), Width = 80};
pnl.Controls.Add(tb);
}
// get Texts from left to right
var textList = pnl.Controls.
OfType<TextBox>().
OrderBy(tb => tb.Left).
Select(tb=> tb.Text).
ToList();