我有2个下拉列表(ddl1,ddl2)和一个带有2个下拉列表(gddl1,gddl2)的gridview。在SelectedIndexChanged
ddl1事件正在更改gddl1的SelectedIndex
回发。Dropdownlist在回发中的选定值
我的问题是 ddl1.databind()发生在按钮的单击事件。因此,一旦ddl1的selectedIndex发生变化,所选值将丢失并返回初始值。
我不能使用!IsPostback
,因为我在按钮单击时绑定ddl1。 如何保留ddl1和ddl2选定的索引。
protected void btnProceed_Click(object sender, EventArgs e)
{
if(ddlLocation.SelectedIndex > -1) {
empDS = ws_service.GetEmpList(ddlLocation.SelectedValue, ((ddlDept.SelectedValue == "All") ? "" : ddlDept.SelectedValue), ((ddlGrade.SelectedValue == "All") ? "" : ddlGrade.SelectedValue));
appraiserDS = ws_service.GetAppList();
grdDetails.DataSource = empDS.Tables[ 0 ].DefaultView;
grdDetails.DataBind();
ddlAppraiserAll.DataSource = appraiserDS.Tables[ 0 ].DefaultView;
ddlAppraiserAll.DataTextField = "APPRAISER_NAME";
ddlAppraiserAll.DataValueField = "APPRAISER_ID";
ddlAppraiserAll.DataBind();
}
}
protected void ddlAppraiserAll_SelectedIndexChanged(object sender, EventArgs e)
{
foreach(GridViewRow gvRow in grdDetails.Rows) {
Control ctrl = gvRow.FindControl("ddlAppraiserId");
DropDownList ddl = ctrl as DropDownList;
if(ddl != null)
ddl.SelectedIndex = ddlAppraiserAll.SelectedIndex;
}
}
向我们显示您的代码。 – 2012-02-17 11:12:24
我已更新我的代码。 – itzArun 2012-02-17 11:21:34
@ itzArun:尝试使用更新面板与异步回发 – Rocky 2012-02-17 12:12:46