У меня есть «подобный опросу» проект, в котором моя сетка включает в себя список имен с радиобуттонистом 1-10 для выбора пользователем. Сетка имеет размер страницы всего 1 на каждый вопрос.
Как это возможно, я могу вернуться назад и увидеть выбранный результат? Я долго искал, некоторые говорят, что сессия, а некоторые используют строку запроса. Чтобы узнать больше о том, что я на самом деле хочу, пожалуйста, посмотрите на эту ссылку: http://www.aspsnippets.com/Articles/Preserving-state-of-Checkboxes-while-paging-in-ASP.Net-GridView-Control.aspx
Как мне установить флажок в качестве radiobuttonlist в вышеуказанном проекте?
Мой код:
protected void SubmitAppraisalGrid_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
SubmitAppraisalGrid.PageIndex = e.NewPageIndex;
ArrayList list = FindValues(this.Page);
DataTable dt = (DataTable)ViewState["QuestionTable"];
SubmitAppraisalGrid.DataSource = dt;
SubmitAppraisalGrid.DataBind();
}
дизайн:
<asp:GridView ID="SubmitAppraisalGrid" runat="server" AllowPaging="True"
AutoGenerateColumns="False" BorderWidth="0px"
OnPageIndexChanging="SubmitAppraisalGrid_PageIndexChanging"
onrowcreated="SubmitAppraisalGrid_RowCreated" PageSize="1" ShowHeader="False"
style="margin-right: 0px">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:Label ID="QuestionLbl" runat="server" Text='<%# Bind("Question")%>'></asp:Label>
<br />
<br />
<asp:GridView ID="StaffAppraisalGrid" runat="server"
AutoGenerateColumns="False" BorderWidth="0px" CellPadding="4" CellSpacing="2"
GridLines="Horizontal">
<Columns>
<asp:BoundField DataField="StaffName" HeaderText="Name">
<HeaderStyle HorizontalAlign="Left" />
</asp:BoundField>
<asp:TemplateField HeaderText="Rate">
<ItemTemplate>
<asp:RadioButtonList ID="RadioList" runat="server" CellPadding="8"
DataSource='<%# Bind("RadioButtonList")%>' RepeatDirection="Horizontal">
</asp:RadioButtonList>
</ItemTemplate>
<HeaderStyle HorizontalAlign="Left" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Remarks">
<ItemTemplate>
<asp:TextBox ID="RemarksTbx" runat="server" CssClass="remarkTbx"
onKeyDown="limitText(this,500);" onkeypress="return check(event)"
onKeyUp="limitText(this,500);" onMouseDown="return DisableControlKey(event)"
Text='<%# Bind("RemarkTbx")%>' TextMode="MultiLine"></asp:TextBox>
</ItemTemplate>
<HeaderStyle HorizontalAlign="Left" />
</asp:TemplateField>
</Columns>
</asp:GridView>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<PagerStyle HorizontalAlign="Center" />
</asp:GridView>