我必须单选按钮来显示或隐藏面板。
protected void RadioButtonList1_SelectedIndexChanged(object sender, EventArgs e)
{
if (RadioButtonList1.SelectedIndex == 0)
{
newPanel.Visible = true;
updatePanel.Visible = false;
}
else if (RadioButtonList1.SelectedIndex == 1)
{
newPanel.Visible = false;
updatePanel.Visible = true;
}
}
在这些面板之外是一个影响数据源(gridview)的下拉列表。第二个单选按钮显示包含此数据源的面板。当从下拉菜单中选择不同的项目时发生更改的代码如下:
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
//change WHERE clause for SQL statement that effects grid view based on drop down menu selection
SqlDataSource4.SelectParameters["userIdSelected"].DefaultValue = userNameDropDown.SelectedItem.Value;
}
这可以正常运行并更新更改正在显示的数据源。
但是,如果我当前选择了第一个单选按钮(显示不同的面板),然后从下拉列表中更改名称,则当我转到第二个单选按钮时,打开的面板显示之前的数据源。它没有正确反映对下拉菜单的更改。
编辑:我尝试将更改添加到单选按钮更改,但我仍然有相同的行为:
protected void RadioButtonList1_SelectedIndexChanged(object sender, EventArgs e)
{
SqlDataSource4.SelectParameters["userIdSelected"].DefaultValue = userNameDropDown.SelectedItem.Value;
if (RadioButtonList1.SelectedIndex == 0)
{
newPanel.Visible = true;
updatePanel.Visible = false;
}
else if (RadioButtonList1.SelectedIndex == 1)
{
newPanel.Visible = false;
updatePanel.Visible = true;
}
}