C# 登录失败后无法访问用户名文本框asp.net

C# 登录失败后无法访问用户名文本框asp.net,c#,asp.net,login,C#,Asp.net,Login,我想在用户输入不正确的用户名和/或密码后,访问并清除用户名文本框(位于登录框中)。我试过这个 ((TextBox)loginBox.FindControl("UserName")).Text = ""; 但是我无法清除用户名文本框或在那里聚焦?登录工具中的聚焦可以通过以下代码实现: loginBox.FindControl("UserName").Focus(); 但据我所知,不可能清除用户名文本。iI不能像传统方法那样清除。类似地,大多数网站保留用户名,但清除密码字段,即使用户提供了错误的

我想在用户输入不正确的用户名和/或密码后,访问并清除用户名文本框(位于登录框中)。我试过这个

((TextBox)loginBox.FindControl("UserName")).Text = "";

但是我无法清除用户名文本框或在那里聚焦?

登录工具中的聚焦可以通过以下代码实现:

loginBox.FindControl("UserName").Focus();
但据我所知,不可能清除用户名文本。iI不能像传统方法那样清除。类似地,大多数网站保留用户名,但清除密码字段,即使用户提供了错误的信息


您应该将“用户名”文本框属性从代码更改为普通文本框属性

在某些事件中,我们似乎需要将UserName.Text和Login.UserName都设置为空字符串,例如Login.onlogin错误:

<script runat="server">
    void OnLoginError(object sender, EventArgs e)
{
    ((TextBox)Login1.FindControl("UserName")).Text="";
    Response.Write("Hello!");
    Login1.UserName = "";
}

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:Login ID="Login1" runat="server" OnLoginError="OnLoginError">

        </asp:Login>
        <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" /></div>
    </form>
</body>
</html>

void onlogin错误(对象发送方,事件参数e)
{
((文本框)Login1.FindControl(“用户名”)).Text=“”;
回答:写“你好!”;
Login1.UserName=“”;
}
无标题页

在您的问题中详细说明您在哪一事件中编写了上述代码等。为什么不直接说
UserName.text=“”
。不确定您的问题是什么。@Rahul在web表单中,您通常必须在控件所在的命名容器中“找到”该控件,然后才能对其执行任何操作。因为他正在使用登录控件,所以他必须这样做。愚蠢,但这是游戏的一部分=)