2013-07-11 1 views
1
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 (статус строки); Когда статус становится пустым, мне нужно скрыть btnNew, иначе показывая статус в ярлыке. Если метка имеет статус тогда и только тогда, новое исследование botton будет отображаться иначе.

Что я хочу, когда пользователь нажимает кнопку NEW, а затем я должен показывать текст ярлыка с пустым статусом. Не нажимать кнопку сохранения. Что мне делать.

ответ

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

    protected void btnNew_Click(object sender, EventArgs e) 
    { 
     GenerateBlankTableHtml(""); 
    } 
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; 
    } 
+0

Jalpesh должны скрывать btnNew в зависимости от состояния. – John

+0

этот код скроет кнопку - btnNew.Style.Add ("Показать", "none"); –