【发布时间】:2015-06-22 10:09:17
【问题描述】:
在我的 .ascx 用户控件中,我有一些 ImageButton 元素,当单击这些元素时,它们会动态创建,然后显示日历元素,将其添加到 PlaceHolder。我有其中三个,该函数将为从单击的 ImageButton 的 ID 创建的每个日历生成一个 ID。我正在尝试为创建的每个日历动态添加一个 SelectionChanged 事件。
我在类的开头声明了一个空对象日历作为全局变量。我在PageLoad 上实例化了一个新的Calendar 对象,在点击事件中我添加了ID、事件并将其添加到占位符中。
虽然 SelectChange 事件似乎不起作用。缺少什么?
public partial class admin_CaptureDate : System.Web.UI.UserControl
{
protected Calendar DateCalendar;
protected void Page_Init(object sender, EventArgs e)
{
DateCalendar = new Calendar();
DateCalendar.ID = "DateCalendar";
DateCalendar.Width = 176;
DateCalendar.SelectionChanged += Calendar_SelChanged;
}
protected void Page_Load(object sender, EventArgs e)
{
}
protected void ShowCalendar_Click(object sender, ImageClickEventArgs e)
{
ImageButton btnSender = (ImageButton)sender;
string Prefix = btnSender.ID.Substring(14);
Trace.Write("this is prefix " + Prefix);
this.FindControl(Prefix + "PlaceHolder").Controls.Add(DateCalendar);
}
protected void Calendar_SelChanged(object sender, EventArgs e)
{
Calendar SelectedCalendar = (Calendar)sender;
string SelectedDate = SelectedCalendar.SelectedDate.ToLongDateString();
Trace.Write("this is the selected date" + SelectedDate);
}
}
还是不行,事件没有附加到日历,还缺少什么?
【问题讨论】:
标签: c# asp.net user-controls