Как я мог установить текстовое поле Имя пользователя элемента управления «Вход», чтобы иметь начальный фокус? - PullRequest
2 голосов
/ 17 октября 2011

Я использую элемент управления входом asp.net:

 <asp:Login ID="Login2" runat="server" LoginButtonType="Link"
                Width="280px" Height="150">               
            </asp:Login>

Как я могу установить текстовое поле Имя пользователя, чтобы оно было в фокусе при начальной загрузке страницы, а также нажать кнопку ссылки входа в систему при входе пользователя.

Я попробовал приведенное ниже в событии Page_Load, но не сработало?

  this.Login2.FindControl("Username").Focus();
  this.form1.DefaultButton = this.Login2.FindControl("LoginButton").UniqueID;

Спасибо

Ответы [ 4 ]

3 голосов
/ 17 октября 2011

Попробуйте что-то вроде этого:

TextBox tb = (TextBox)Login1.FindControl("UserName");
tb.Focus();
1 голос
/ 17 октября 2011
protected void Page_Load(object sender, System.EventArgs e)
{
    System.Web.UI.WebControls.Login login = LoginArea.FindControl("LoginForm");

    TextBox txt = login.FindControl("UserName");

    Page.SetFocus(txt);

}
1 голос
/ 17 октября 2011
if (!HttpContext.Current.User.Identity.IsAuthenticated) {
   Login lg = (WebControls.Login)LoginView1.FindControl("Login2");
   TextBox tb = (TextBox)lg.FindControl("UserName");
   tb.Focus();
}

Посмотрите здесь, чтобы увидеть, как вы можете определить кнопку входа в систему как кнопку по умолчанию при входе в систему:

0 голосов
/ 17 октября 2011

Вы можете просто написать Login1.Focus() при событии загрузки страницы, а также, в основном, вы можете определить DefaultButton не только на уровне формы, но и на отдельном уровне панели, если фокус находится внутри панели, кнопка по умолчанию для панели будет использоваться, если вы нажали "Enter

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