繁体   English   中英

如何检查一般方法中单击的按钮?

[英]How to check Button clicked in general methode?

我在下面尝试过

public partial class PaymentSearch : System.Web.UI.Page
{
   private bool button1WasClicked = false;


   protected void linkToday_Click(object sender, EventArgs e)
   {
      button1WasClicked = true;
    }

  protected void ddlRecordPayment_SelectedIndexChanged(object sender, EventArgs e)
  {
  gridAllPaymentBind(1);
  }
   public void gridAllPaymentBind(int pageIndex)
   {
   if (button1WasClicked == true)
  {
   result = 3;
    command.Parameters.AddWithValue("@result", result);
   }

 }

但是在'gridAllPaymentBind'方法中,'button1WasClicked'得到了错误的值,在下拉列表更改事件触发前,我一直单击链接按钮。

ASP.NET本质上是无状态的,因此变量值将不会在回发之间持久存在。 因此,要使其持久化,可以使用SessionViewState

public partial class PaymentSearch : System.Web.UI.Page
{
   private bool button1WasClicked
   {
       get { return (bool)Session["button1WasClicked"]; }
       set { Session["button1WasClicked"] = value; }
   }

   protected void linkToday_Click(object sender, EventArgs e)
   {
       button1WasClicked = true;
   }

  protected void ddlRecordPayment_SelectedIndexChanged(object sender, EventArgs e)
  {
      gridAllPaymentBind(1);
  }

  public void gridAllPaymentBind(int pageIndex)
  {
      if (button1WasClicked == true)
      {
         result = 3;
        command.Parameters.AddWithValue("@result", result);
      }
  }
}

尝试如下...

protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack == true)
            {
                Session["button1WasClicked "] = false;
}
}


   protected void linkToday_Click(object sender, EventArgs e)
   {
       Session["button1WasClicked "] = true;
    }

  protected void ddlRecordPayment_SelectedIndexChanged(object sender, EventArgs e)
  {
  gridAllPaymentBind(1);
  }
   public void gridAllPaymentBind(int pageIndex)
   {
bool button1WasClicked = (bool)Session["button1WasClicked "];
   if (button1WasClicked == true)
  {
   result = 3;
    command.Parameters.AddWithValue("@result", result);
   }

 }

希望这对您有帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM