Найти управление в loginview - PullRequest
7 голосов
/ 14 октября 2011

enter image description here У меня есть мастер-страница с логином, в логине - контроль входа в систему asp. у меня также есть ярлык, который НЕ содержится в логине.

Как получить доступ к элементу управления textbox имени пользователя в элементе управления входом asp и отобразить текст в метке.

Пожалуйста, помогите!

Это мой код:

Login lg = (Login)LoginView1.FindControl("Login1");
TextBox tb = (TextBox)lg.FindControl("UserName");

Label2.Text = tb.Text;

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

Мне нужно проверить имя пользователя, введенное в текстовое поле, чтобы сначала проверить, является ли он активным пользователем. если нет, это позволяет им активировать его. Как я могу получить доступ к тексту из текстового поля имени пользователя. остальное я могу выяснить.

1 Ответ

9 голосов
/ 14 октября 2011

Может быть, вы должны проверить, аутентифицирован ли пользователь или нет, потому что TextBox находится внутри AnonymousTemplate или это проблема пространства имен (WebControls.Login):

if (!HttpContext.Current.User.Identity.IsAuthenticated) {
   Login lg = (WebControls.Login)LoginView1.FindControl("Login1");
   TextBox tb = (TextBox)lg.FindControl("UserName");
   Label2.Text = tb.Text;
}

Но обычно вы можете получить имя пользователя / пароль через соответствующие свойства имя пользователя / пароль из Login.

Редактировать : добавленный вами скриншот очень маленький, но я вижу, что вы получаете InvalidCastException, поэтому мое предположение по вопросу о пространстве имен было правильным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...