Передача значения из пользовательского элемента управления в код позади

1

Я пытаюсь передать значение из пользовательского элемента управления в код без везения. Я могу написать правильное значение (IDuser_uc) на странице aspx, но я не могу передать его в код позади. Какие-нибудь советы?

Пользовательский контроль

protected void FormView_IDuser_DataBound(object sender, EventArgs e)
    {
            Label IDuserText = FormView_IDuser.FindControl("IDuserLabel") as Label;
            IDuser_uc = Convert.ToString(IDuserText.Text);

    }

Страница ASPX

<uc4:IDuser id="IDuser" runat="server" />
<% Response.Write(IDuser.IDuser_uc); // Here correct value %>

Код за

protected void Page_Load(object sender, EventArgs e)
    {
     SqlDataSource_userConnections.SelectParameters["IDuser_par"].DefaultValue = IDuser.IDuser_uc ; // Here NO value
     Response.Write("Connections :" + IDuser.IDuser_uc); // Here NO value

    }

ОБНОВИТЬ

Проблема заключалась в том, что пользовательский элемент управления запускается после того, как функция PageLoad объясняет, почему я получил пустую строку. Чтобы решить проблему, я использовал Page_PreRender вместо Page_Load на странице, за которой стоит страница.

  • 0
    IDuser_uc.Text MSDN надеюсь, это поможет
  • 0
    IDuser_uc.Text не распознается в коде за страницей ...
Показать ещё 3 комментария
Теги:
user-controls

1 ответ

0

Создайте открытый метод в пользовательском элементе управления. Когда вы отправляете назад страницу, страница Parent.aspx вызывает метод управления пользователями. Пример....

  1. В вашем элементе управления пользователя:

    Открытая строка GetUserControlValue() {return Label IDuserText;

    } }

  2. В своем родительском ASPX Pgae

    var UserControlString = IDuser_uc.GetUserControlValue();

  • 0
    Все еще никакой ценности не передано. GetUserControlValue () отправляет пустую строку в код позади страницы ....

Ещё вопросы

Сообщество Overcoder
Наверх
Меню