2

コントロールにデフォルト値を設定したいLogin。これはLoginテンプレートモードでの私のコントロールです:

    <td align="center" dir="rtl" style="width: 140px; padding-bottom: 20px;">
        <asp:TextBox ID="UserName" runat="server" CssClass="txtbox " Font-Size="0.8em" 
            Height="24px" Width="137px" Text="<%$ Resources:resource, username%>  " 
            Font-Names="tahoma" AutoCompleteType="FirstName" MaxLength="32"> 
        </asp:TextBox>
    </td>
</tr>
<tr>
    <td align="center" dir="rtl" style="width: 160px">
        <asp:TextBox ID="Password" runat="server"  CssClass="txtbox" Font-Size="0.8em" 
            Height="24px" Width="137px" Font-Names="tahoma" 
            TextMode="Password" MaxLength="32"   >
        </asp:TextBox> 

パスワードボックスにデフォルト値を設定しようとしたところ、表示されません。コード ビハインド ページからパスワード ボックスにアクセスできません。どうすればいいですか?

4

3 に答える 3

5

機密情報を保存しないようにパスワードモードが作成されているため、.Textプロパティの代わりに属性を設定します。これがワークアウトです。

txtPassword.Attributes.Add("value", "defaultpassword")

しかし、これはクライアントにパスワードを発行し、彼らがそれを見ることができるので、私はこの方法を好みません。

より良い方法は、空白にして必須にしないことです。後で、デフォルトのパスワードのパスワードフィールドを空白のままにするメッセージをユーザーに表示します。

コードビハインドで、パスワードテキストボックスが空かどうかを確認し、テキストボックス値の代わりにデフォルトのパスワードを渡します。

ログインボタンクリックイベントの場合、背後にあるコードは次のようになります。

 string password = (txtPassword.Text == String.Empty)? DefaultPassword : txtPassword.Text;
 AuthenticateUser(txtUserName.Text,password);
于 2012-05-30T08:11:09.533 に答える
4

textmode ="password" を使用してテキスト ボックスに値を割り当てる正しい方法は、コード ビハインドを使用することです。

textbox.Attributes.Add("value", "whatever")
于 2012-05-30T08:00:11.910 に答える
2

これは便利かもしれません。TextMode=Password を使用して TextBox の値を設定する方法について説明します。

于 2012-05-30T08:02:31.137 に答える