У меня есть Repeater, который загружает некоторые данные из базы данных 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"/>
В коде позади, я могу назначить, чтобы получить вопросы на другую кнопку мыши, чтобы загрузить и связать Repeater. В ItemDataBound я нахожу элементы управления и присваиваю вопросы метке.
Как получить ответы, которые пользователь вводит и сохраняет идентификатор вопроса с ответом, который они вводят в событии с нажатием кнопки?
Сначала я попробовал это в случае нажатия кнопки
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();
}
что вы пытаетесь достичь, вероятно, вы не даже не нужно .net управления в ретранслятор. Просто попробуйте использовать элементы html. –