Вызов функции веб-контроля пользователя с родительской страницы
Я создаю пользовательский элемент управления комментариями. Я хочу использовать этот элемент управления комментариями на отдельных страницах, таких как: статьи, достопримечательности и категории.
Итак, на странице статей я объявляю веб-контроль пользователя
<uc1:Comments ID="Comments1" runat="server" />
На контроле есть вызов функции loadComments
public void LoadComents(int ID,string type)
{
//Load the comments into an asp.net repeater that resides on the control
}
который я хочу позвонить, как только я подтвердил, что статья существует. Так что на странице статьи я хочу сделать что-то вроде
Comments1.LoadComents(101,"article");
Это возможно?
2 ответа
Решение
Вы можете использовать такой код внутри своего класса Page:
Comments commentsControl = this.FindControl("Comments1");
commentsControl.LoadComents(1, "someType");
Или, если элемент управления существует на странице в Designer, вы можете сделать что-то простое:
this.Comments1.LoadComents(1, "someType");
На UserControl Code-Behind у меня есть следующий код:
public void SetPageTitle(string strTitle)
{
lPageTitle.Text = strTitle;
}
На странице Code-Behind, которая содержит / включает UserControl
{
PageTitle.SetPageTitle(cat.categoryName);
}
Это работает...