我如何确定哪个触发器触发了我的更新面板?

时间:2009-09-22 10:51:48

标签: asp.net ajax updatepanel triggers

我有一个更新面板和一个触发它的按钮列表。我需要一些方法来找出当加载方法(由触发器引起)关闭时按下了哪个按钮,但我无法弄明白。发件人不会进入触发器,而是更新面板本身。

我需要根据按下的按钮执行一些操作。

有什么建议吗?

我正在使用ASP.NET / C#

<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional" OnLoad="LocationList_Load">

<Triggers>
    <asp:AsyncPostBackTrigger ControlID="btnLocMiddleEast" />
    <asp:AsyncPostBackTrigger ControlID="btnLocUSA" />
    <asp:AsyncPostBackTrigger ControlID="btnLocNewZealand" />
    <asp:AsyncPostBackTrigger ControlID="btnLocAustralia" />
    <asp:AsyncPostBackTrigger ControlID="btnLocEurope" />
    <asp:AsyncPostBackTrigger ControlID="btnLocRepublicOfIreland" />
    <asp:AsyncPostBackTrigger ControlID="btnLocNorthernIreland" />
    <asp:AsyncPostBackTrigger ControlID="btnLocWales" />
    <asp:AsyncPostBackTrigger ControlID="btnLocScotland" />

3 个答案:

答案 0 :(得分:1)

通常我会为每个按钮创建一个单独的Click事件处理程序,然后编写应在每个事件处理程序中触发的特定代码。

答案 1 :(得分:1)

检查我对这个问题的回答:

  

Making a difference between AsyncPostbacks in nested update panels

基本上你应该检查触发器的ScriptManager.AsyncPostBackSourceElementID

答案 2 :(得分:0)

如果您正在调试,可以查看stack trace

相关问题