gpt4 book ai didi

c# - 在 Repeater 中获取动态控件和文本

转载 作者:太空宇宙 更新时间:2023-11-03 13:16:02 26 4
gpt4 key购买 nike

我有一个从 SQL 数据库加载一些数据的 Repeater

<asp:Repeater ID="Repeater" runat="server" OnItemDataBound="Repeater_ItemDataBound">
<ItemTemplate>
<asp:Label ID="QuestionLabel" runat="server" Text=""></asp:Label>
<asp:TextBox ID="AnswerLabel" runat="server"></asp:TextBox>
</ItemTemplate>
</asp:Repeater>

<asp:Button ID="AnswerSubmit" runat="server" Text="Insert"/>

在后面的代码中,我指定在另一个按钮上获取问题,单击以加载和绑定(bind) Repeater。在 ItemDataBound 中,我找到控件并将问题分配给标签。

我应该如何获取用户输入的答案并将问题的 ID 与他们在按钮单击事件中输入的答案一起存储?

起初,我在按钮点击事件中尝试过这个

foreach (RepeaterItem item in Repeater.Items)
{
Label QuestionLabel = (Label)item.FindControl("QuestionLabel");
}

但找不到 QuestionLabel。查看页面源代码,我认为这是由于标签具有不同的值(QuestionLabel_0、QuestionLabel_1 等),所以很难找到解决这个问题的方法?

编辑

    protected void QuestionButton_Click(object sender, EventArgs e)
{
Repeater.DataSource = QuestionsByID(ID);
Repeater.DataBind();
}

最佳答案

see

foreach (RepeaterItem item in Repeater.Items)
{
if (item.ItemType == ListItemType.Item
|| item.ItemType == ListItemType.AlternatingItem)
{
Label QuestionLabel = (Label)item.FindControl("QuestionLabel");
}
}

关于c# - 在 Repeater 中获取动态控件和文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26158787/

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