Вызов функции веб-контроля пользователя с родительской страницы

Я создаю пользовательский элемент управления комментариями. Я хочу использовать этот элемент управления комментариями на отдельных страницах, таких как: статьи, достопримечательности и категории.

Итак, на странице статей я объявляю веб-контроль пользователя

 <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);
   }

Это работает...

Другие вопросы по тегам