点击Page_Load
后,我尝试调用btnSubmit
方法。对于我的Page_Load
,我在列表caseprogress != 'ongoing'
的下拉列表框中进行了数据绑定。然后,对于我的btnSubmit_Click
,我将一些数据插入到另一个表中,更新caseprogress = 'completed'
并调用Page_Load
方法。但我的下拉列表框似乎并不重新绑定。 (除非我刷新页面)我尝试在其他页面上使用此方法,但不适用于此。仅供参考我在此页面中没有任何更新面板。同样适用于正在工作的另一个。
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//Bind data to Dropdownlist box
}
}
protected void btnSubmit_Click(object sender, EventArgs e)
{
//Insert / Update data of sql data table
Page_Load(null, EventArgs.Empty);
}
答案 0 :(得分:7)
您可以使用方法绑定下拉列表
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindData();
}
}
protected void btnSubmit_Click(object sender, EventArgs e)
{
//Insert / Update data of sql data table
BindData();
}
private void BindData()
{
String policeid = (String)Session["policeid"];
SqlConnection con = new SqlConnection("Data Source = localhost; Initial Catalog = MajorProject; Integrated Security= SSPI");
con.Open();
DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter("Select mr.memberreportid From PoliceAccount pa, MemberReport mr Where pa.policeid = '" + policeid + "' And pa.handle = mr.memberreportid And mr.caseprogress = 'ongoing'", con);
da.Fill(ds);
ddlMemberReportID.DataSource = ds;
ddlMemberReportID.DataTextField = "memberreportid";
ddlMemberReportID.DataValueField = "memberreportid";
ddlMemberReportID.DataBind();
con.Close();
}
并删除Page_Load(null, EventArgs.Empty);
代码行
答案 1 :(得分:1)
您的问题可能是您致电Page_Load(null, EventArgs.Empty);
它将导致对Page_Load的双重调用,您在btn_Click
事件中调用的最后一个调用将IsPostback = true
,并且您的数据不会被绑定。