按钮后有回发

时间:2013-07-11 13:27:50

标签: c# asp.net ispostback

protected void Page_Load(object sender, EventArgs e)
{
    Button cmdTemp = null;
    try
    {
        cmdTemp = (Button)GetPostBackControl(this);
    }
    catch { }  
    FillTableDB();
    if(IsPostBack)
    {
        if(cmdTemp == null || cmdTemp.ID == "btnNew" || cmdTemp.ID != "btnSave")
        {
            GenerateBlankTableHtml("");
        }
    }  
}

private void FillTableDB()
{
    //SQL QUERY
    //Select status from table 

    GenerateBlankTableHtml(status)
}

private void GenerateBlankTableHtml(string status)
{
   if(status=="")
   {
        btnNew.Style.Add("Display", "none");
   }
   else
   {
      //show status in label
     lblStatus.text=status;
   }

}

public static Control GetPostBackControl(Page page)
{
    Control control = null;

    string ctrlname = page.Request.Params.Get("__EVENTTARGET");
    if(ctrlname != null && ctrlname != string.Empty)
    {
        control = page.FindControl(ctrlname);
    }
    else
    {
        foreach(string ctl in page.Request.Form)
        {
            Control c = page.FindControl(ctl);
            if(c is System.Web.UI.WebControls.Button)
            {
                control = c;
                break;
            }
        }
    }
    return control;
}

ASPX:

<asp:Button ID="btnSave" runat="server"/>
<asp:Button ID="btnNew" runat="server"/>
<asp:Label ID="lblStatus" runat="server"

我有两个函数FillTableDB(); GenerateBlankTableHtml(string status); 当状态变为空白时,我必须隐藏btnNew,否则显示标签中的状态。 如果标签具有状态,那么只有那时才会显示新的研究按钮。

当用户点击按钮NEW时我想要的只有那时我必须显示空白状态的标签文字不点击保存按钮我应该怎么做。

2 个答案:

答案 0 :(得分:1)

做类似的事情。

<asp:Button ID="btnNew" runat="server" onClick="btnNew_click"/>

现在点击该按钮新点击。

 protected void btnNew_Click(object sender, EventArgs e)
    {
        Button btnNew = (Button)sender;
        btnNew.Style.Add("Display", "none");
        lblStatus.text = string.empty;
    }

答案 1 :(得分:1)

Try this  
    if(IsPostBack)
     {                      
       if(btnNew.Style.Value == "Display:none;")
      {
             GenerateBlankTableHtml("");
      }                     
    }

   protected void btnNew_Click(object sender, EventArgs e)
    {
      GenerateBlankTableHtml("");
    }