我在ASP.NET中有一个页面。在这一页我有一个RadioButtonList,它包含一个问题的5个解决方案。RadioButtonList由一个对象提供,该对象具有这些解决方案。
我有一个定时器,它每秒钟运行一次,用来更新大量的图形控件。除了RadioButtonList选择之外,一切都正常。
这就是发生的事
:
当我在RadioButtonList中选择一个项目并且计时器计时时,RadioButtonList值的selectedIndex为0。
这意味着它选择列表中的第一项。但是,如果我单击一个项目,其中有一个“是”值(值字段可以有“否”或“是”,它将留在这个项目。
首先,我不知道计时器为什么要重新选择我的RadioButtonList选项,因为任何其他页面加载事件都不起作用。即使这有道理,我也不知道为什么它会重新选择一些答案。。
我有以下HTML代码:
<asp:Timer ID="AssignmentTimer" runat="server" Interval="1000">
</asp:Timer>
<asp:UpdatePanel ID="FightUpdatePnl" runat="server" UpdateMode="Always" ChildrenAsTriggers="True">
<Triggers>
<asp:AsyncPostBackTrigger ControlID="AssignmentTimer" EventName="Tick"/>
</Triggers>
<ContentTemplate>
<asp:Panel ID="AssignmentDiv" runat="server" CssClass="FightDiv">
</asp:Panel>
</ContentTemplate>
</asp:UpdatePanel>
我有以下代码:
protected void Page_Load(object sender, EventArgs e)
{
SetupPage();
}
private void SetupPage()
{
RadioButtonList list = new RadioButtonList();
list.DataSource = question.PossibleSolution;
list.DataTextField = "Content";
list.DataValueField = "IsAnswer";
list.DataBind();
AssignmentDiv.Controls.Add(list);
}
总之,我的问题是。。。
计时器计时时,RadioButtonList将重新选择项0。然而,这是不一致的,有时它不重新选择。
我宁愿它根本没有被选中!:)