为什么我的事件绑定失败
本文关键字:失败 绑定 事件 我的 为什么 | 更新日期: 2023-09-27 18:27:37
我在.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));
但是当用户点击链接按钮时,它不会触发点击事件。不知道为什么。
请帮忙。
您需要将事件附加到每个post back上。换句话说,如果在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));
}
}
您需要向LinkButton标记添加一个OnClick属性(这是在编译时设置的)。
<asp:LinkButton runat="server" OnClick="lnkSynEvent_Click" ID="lnkSynEvent" Text="Export Event to Outlook"></asp:LinkButton>
MSDN链接