Добавить элемент управления ASP.NET в веб-часть Sharepoint - PullRequest
1 голос
/ 12 июня 2009

Я бы хотел динамически добавить ASP.NET LinkButton в мою веб-часть SharePoint. Я подключаю LinkButton к обработчику событий, но когда я выполняю код, кажется, что событие никогда не запускается.

Где в жизненном цикле (какое событие) я должен добавить такой элемент управления и как?

Спасибо.

Ответы [ 3 ]

3 голосов
/ 12 июня 2009

Добавьте его в событие CreateChildControls () в веб-части, например:

protected override void CreateChildControls()
{      
    LinkButton linkbutton = new LinkButton();
    linkbutton.Click += ClickButton;
    this.Controls.Add(linkbutton);

}

protected void ClickButton(object sender, EventArgs e)
{
    // handle event
}
2 голосов
/ 12 июня 2009

Если вам нужно, чтобы элемент управления запускал событие сервера, вам нужно зарегистрировать элемент управления в жизненном цикле Page_Init или Page_Load, чтобы событие сработало. Если вы добавите элемент управления на этапе PreRender, тогда будет слишком поздно. Или переопределите метод CreateChildControls () и добавьте элемент управления в этот метод.

Вам не нужно делать ничего особенного, чтобы добавить элемент управления, просто:

    var linkButton = new LinkButton();
    // register event
    Controls.Add(linkButton);
    
0 голосов
/ 12 июня 2009

У меня была такая же проблема. Добавление LinkButton в CreateChildControls и явная установка идентификатора, а затем оформление моей веб-части с помощью интерфейса INamingContainer устранили мою проблему.

...