我有一个面板,其可见性设置为false。我正在尝试做的是在我的页面生成时动态创建一个LinkButton,并且当我单击LinkButton,面板时会这样做。 visibility设置为true并显示在我的页面上。
我像这样创建我的LinkButton:
LinkButton _lb = new LinkButton();
_lb.Text = "Details";
_lb.Click += _lb_Click;
以下是我的LinkButton的Click事件处理程序的代码:
protected void _lb_Click(object sender, EventArgs e)
{
Panel1.Visible = true;
}
每当我渲染页面并单击LinkButton时,事件永远不会触发。我可以在事件处理程序中放置一个断点,它永远不会到达。我错过了什么?
编辑:
我将LinkButton添加到占位符中的页面,如下所示:
PlaceHolder1.Controls.Add(_lb);
EDIT2:
感谢大家到目前为止的回复。似乎问题肯定与生命周期有关。要添加详细信息,LinkButton是在控制UpdatePanel更新的Timer_Tick事件内创建的。我不知道如何在Page_Load中创建LinkButton并将其传递给Timer_Tick事件。有什么帮助吗?
答案 0 :(得分:3)
由于您没有提及它的位置,请将您的代码移至Page_Load
:
protected void Page_Load(object sender, System.EventArgs e)
{
LinkButton _lb = new LinkButton();
_lb.Text = "Details";
_lb.Click += _lb_Click;
PlaceHolder1.Controls.Add(_lb);
}