页面加载时更新控件字段

时间:2012-10-17 12:58:24

标签: asp.net c#-4.0

通过调用select方法

,我用数据库中的数据填充一些控件

并更改值以更新它,但是当我按下更新按钮时,它会获取页面加载时调用的值,并忽略所有更改。

我该如何避免这种情况?

提前感谢:)

这是一个简单的代码来展示我的问题

SelectBLL _selectbll;
string _title = string.Empty;
string _details = string.Empty;


#region Page Load
protected void Page_Load(object sender, EventArgs e)
{
    GetUMedicineDetails();
}
#endregion

#region Get UMedicine Details
private void GetUMedicineDetails()
{
    _selectbll = new SelectBLL();
    _selectbll._GetUMedicineDetails(Request.QueryString[0].ToString(), ref _title, ref _details);
    #region Bind Controls
    txtdetails.Text = _details;
    txttitle.Text = _title;
    #endregion
}
#endregion

#region Update Button
protected void btnupdate_Click(object sender, EventArgs e)
{
    _UpdateUMedicine();
}
#endregion

#region UpdateU Medicine
public void _UpdateUMedicine()
{
    _updatebll = new UpdateBLL();
    _updatebll._UpdateUMedicine(
        Convert.ToInt32(Request.QueryString[0]), txtdetails.Text, txttitle.Text);
}
#endregion

2 个答案:

答案 0 :(得分:0)

DataBind仅在!Page.IsPostaBack

protected void Page_Load(object sender, EventArgs e)
{
    if(!Page.IsPostaBack)
        GetUMedicineDetails();
}

答案 1 :(得分:0)

Page.IsPostBack Property :获取一个值,该值指示页面是第一次呈现还是正在加载以响应回发。

protected void Page_Load(object sender, EventArgs e)
{

    if (!IsPostBack)
    {
        GetUMedicineDetails();
    }
}

另外,请参阅:

<强> How to: Determine How ASP.NET Web Pages Were Invoked