Web用户控件事件无法触发的问题
各位大哥,小弟请教一个Web用户控件事件无法触发的问题,相关内容如下所示。
控件CheckBoxCell.ascx的内容如下:
<%@ Control ClassName="CheckBoxCell" Language="C#" AutoEventWireup="true" CodeFile="CheckBoxCell.ascx.cs" Inherits="admin_CheckBoxCell_CheckBoxCell" %>
<asp:CheckBox ID="chk" runat="server" AutoPostBack="True"
oncheckedchanged="chk_CheckedChanged" />
<asp:LinkButton ID="lbt" runat="server"></asp:LinkButton>
控件CheckBoxCell.ascx.cs的内容如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class admin_CheckBoxCell_CheckBoxCell : System.Web.UI.UserControl
{
//public delegate void CheckChangedHandler(object sender, EventArgs e);
protected void Page_Load(object sender, EventArgs e)
{
}
public event EventHandler CheckedChanged;
public CssStyleCollection Style
{
get
{
return this.lbt.Style;
}
}
public Unit Height
{
set
{
this.lbt.Height = value;
}
get
{
return this.lbt.Height;
}
}
protected void chk_CheckedChanged(object sender, EventArgs e)
{
CheckedChanged(sender, e);
}
}
在一个使用该控件的aspx.cs文件中:
CheckBoxCell la = (CheckBoxCell)LoadControl("~/admin/CheckBoxCell/CheckBoxCell.ascx");
la.CheckedChanged += new EventHandler(la_CheckedChanged);
protected void la_CheckedChanged(object sender, EventArgs e)
{
//throw new NotImplementedException();
this.lstSelected.Items.Add("aaaaaaaaaaa");
}
la_CheckedChanged()函数根本不执行,郁闷呀。
------解决方案--------------------la.CheckedChanged += new EventHandler(la_CheckedChanged);写在什么地方了,确认是否执行
------解决方案--------------------如果我没猜错的话楼主是想使用委托与事件吧,这有