gpt4 book ai didi

c# - 确定哪个控件导致 PostBack

转载 作者:行者123 更新时间:2023-11-30 14:32:34 24 4
gpt4 key购买 nike

我有这个 aspx:

<asp:ImageButton ID="check" runat="server" ImageUrl="../img/process.png"  OnClick="check_Click" CausesValidation="false" UseSubmitBehavior="false"/>

现在在 Page_Load 我想确定 PostBack 是否由 check 引起,所以我遵循了 this使用此代码的问题方法:

if(FindControl(Page.Request.Params.Get("__EVENTTARGET"))!=check)//if not caused by "check"
//do something

但是 Page.Request.Params.Get("__EVENTTARGET") 是空的。(我在 UpdatePanel 中使用我的 ImageButton)

我怎样才能达到我的目标?

最佳答案

protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
return;
Control control = null;
string controlName = Page.Request.Params["__EVENTTARGET"];
if (!String.IsNullOrEmpty(controlName))
{
control = Page.FindControl(controlName);
}
else
{
string controlId;
Control foundControl;
foreach (string ctl in Page.Request.Form)
{
if (ctl.EndsWith(".x") || ctl.EndsWith(".y"))
{
controlId = ctl.Substring(0, ctl.Length - 2);
foundControl = Page.FindControl(controlId);
}
else
{
foundControl = Page.FindControl(ctl);
}
if (!(foundControl is Button || foundControl is ImageButton)) continue;
control = foundControl;
break;
}
}
Label1.Text = control.ID; // label1 must be in UpdatePanel
}

关于c# - 确定哪个控件导致 PostBack,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18294982/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com