C# 如何在常规方法中检查单击的按钮?
我已经试过了C# 如何在常规方法中检查单击的按钮?,c#,C#,我已经试过了 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_
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”methode中,Button1被单击“获取错误值”,在下拉列表更改事件触发之前,我已单击链接按钮。ASP.NET本质上是无状态的,因此变量值不会在回发之间持续存在。因此,要使其持久化,可以使用会话或ViewState 试试下面的
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);
}
}
希望这将对您有所帮助。祝您好运。最好在会话中输入该布尔值。您是否检查了linkToday\u Click方法在单击时是否被调用?put private bool button1WasClicked=false;在Page.IsPostPack检查中,每当页面回发时,该值再次更改为false
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);
}
}