为什么我的事件绑定失败?

时间:2013-08-14 16:00:23

标签: c# asp.net event-binding

我在.aspx页面上有一个链接按钮:

<asp:LinkButton runat="server" ID="lnkSynEvent" Text="Export Event to Outlook"></asp:LinkButton>

和页面背后代码的方法:

protected void lnkSynEvent_Click(object sender, EventArgs e, DataTable data)
        {}

现在在运行时我试图将事件绑定到函数内的链接按钮

lnkSynEvent.Click +=new EventHandler((sender,args) => lnkSynEvent_Click(sender,args, eventData));

但是当用户点击“链接”按钮时,它不会触发Click事件。 不知道为什么。

请帮忙。

2 个答案:

答案 0 :(得分:0)

您需要在每个帖子上附上活动。换句话说,如果您在if (!IsPostBack)内附加了一个事件,那么它就不会出现。火。

protected void Page_Load(object sender, EventArgs e)
{
  var data = new DataTable();
  lnkSynEvent.Click += new EventHandler((s, a) => lnkSynEvent_Click(s, a, data));
}

protected void lnkSynEvent_Click(object sender, EventArgs e, DataTable data)
{

}

以下代码不会触发点击事件

protected void Page_Load(object sender, EventArgs e)
{
  if (!IsPostBack)
  {
    var data = new DataTable();
    lnkSynEvent.Click += new EventHandler((s, a) => lnkSynEvent_Click(s, a, data));
  }
}

答案 1 :(得分:0)

您需要向LinkBut​​ton标记添加OnClick属性(这是在编译时设置它)。

<asp:LinkButton runat="server" OnClick="lnkSynEvent_Click" ID="lnkSynEvent" Text="Export Event to Outlook"></asp:LinkButton>

MSDN Link

相关问题