加入收藏 | 设为首页 | 会员中心 | 我要投稿 莱芜站长网 (https://www.0634zz.com/)- 云连接、建站、智能边缘云、设备管理、大数据!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 哪个控件导致回发?

发布时间:2020-07-03 09:05:53 所属栏目:asp.Net 来源:互联网
导读:我有两个按钮: asp:Button ID=Button1 runat=server Text=Button /asp:Button ID=Button2 runat=server Text=Button / 如何在pageLoad确定这两个哪一个导致回发? 有一个简短的解决方案,因为我知道只有两个控件,可以导致这种回发? 您可以使用此方法来获取

我有两个按钮:

<asp:Button ID="Button1" runat="server" Text="Button" />
<asp:Button ID="Button2" runat="server" Text="Button" />

如何在pageLoad确定这两个哪一个导致回发?
有一个简短的解决方案,因为我知道只有两个控件,可以导致这种回发?

解决方法

您可以使用此方法来获取导致回发的控件:
/// <summary>
/// Retrieves the control that caused the postback.
/// </summary>
/// <param name="page"></param>
/// <returns></returns>
private Control GetControlThatCausedPostBack(Page page)
{
    //initialize a control and set it to null
    Control ctrl = null;

    //get the event target name and find the control
    string ctrlName = page.Request.Params.Get("__EVENTTARGET");
    if (!String.IsNullOrEmpty(ctrlName))
        ctrl = page.FindControl(ctrlName);

    //return the control to the calling method
    return ctrl;
}

(编辑:莱芜站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读