gpt4 book ai didi

.net - 如何使用循环从 100 个文本框中检索值

转载 作者:行者123 更新时间:2023-12-01 01:00:42 26 4
gpt4 key购买 nike

friend ,

我有一个包含 100 个或更多文本框(HTML 或 ASP.NET)的网格,每个文本框都将包含一个固定长度的文本值,需要将所有这些传递回后端表单以对数据库进行批量更新。

我可以通过在代码隐藏中简单地遍历每个控件的 .text 属性来做到这一点。

然而,这会使代码变得又大又丑。

我想知道是否有任何原因要使用某种受控循环结构遍历每个控件并检索数据

Private List<string> getdata()
{
Private List<String> MyList = new List<string>();
foreach (Textbox)control txbControl in ....// don't know what this will be
{
MyList.Add(txbControl.text);
}
}

请注意,所有这些文本框在页面上都有唯一的 ID 标记,即

<tablr>
<tbody>
<tr>
<td>
<asp:TextBox ID="TxB_Customize1" runat="server"></asp:TextBox>
<td/>
<td>
<asp:TextBox ID="TxB_Customize2" runat="server"></asp:TextBox>
<td/>
<td>
<asp:TextBox ID="TxB_Customize3" runat="server"></asp:TextBox>

.........

抱歉忘记提及这一点,文本框按列分组,给定列中的每个文本框共享相似的名称,即给定实例中的“Txb_Customize”。

因此,在检索值时,我还需要知道它的来源(可能是文本框 ID)。

最佳答案

查看Control.Controls属性(property)。

你想要这样的东西:

foreach (Control control in Controls)
{
TextBox textBox = control as TextBox;
// Ignore non-textboxes
if (textBox != null)
{
list.Add(textBox.Text);
}
}

如果您使用的是 .NET 3.5,则可以使用 LINQ 以更简单的方式执行此操作:

return Controls.OfType<TextBox>()
.Select(textBox => textBox.Text)
.ToList();

关于.net - 如何使用循环从 100 个文本框中检索值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/594208/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com