0

我在 .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 事件。不知道为什么。

请帮忙。

4

2 回答 2

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));
  }
}
于 2013-08-14T16:07:17.757 回答
0

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

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

MSDN 链接

于 2013-08-14T16:08:34.333 回答