将 ASP 转发器数据源强制转换为 C# 列表

本文关键字:转换 列表 ASP 转发器 数据源 | 更新日期: 2023-09-27 18:36:37

我有一个名为rptFoo的中继器和名为listFoo的C#List<String>。我只知道我可以分配一个列表作为中继器DataSource,就像这样:

rptFoo.DataSource = listFoo
rptFoo.DataBind();

此中继器呈现到文本框,然后我对文本框的文本进行一些更改。反之亦然,我可以得到列表吗?我的意思是,当转发器项的某个文本框上的数据发生更改时,我可以将其分配给我的 C# 列表,如下所示:

listFoo = DataSource

我正在寻找比通过 foreach 逐个访问中继器项目更好的东西。知道吗?

这是我的做法:

foreach (RepeaterItem item in rptFoo.Items)
{
  TextBox myTextBox= (TextBox)item.FindControl("myTextBox");
  listFoo[item.ItemIndex] = myTextBox.Text;
}

我想在我的中继器上获取任何编辑的数据,以反映在我的列表中。

提前致谢

将 ASP 转发器数据源强制转换为 C# 列表

比循环遍历每个转发器项并查找文本框更好的方法可能是利用 TextBox 控件的 OnTextChanged 事件处理程序。 这将使您能够直接访问 TextBox 对象及其新值。

相关文章: