2011-09-12 15 views
1

asp:loginコントロールを持つユーザーコントロールを作成しました。 LoginUser.LoginButtonTextのようなプロパティは設定できません。デバッガを介してWebサイトを実行すると、行が実行され、エラーはスローされません。デバッガのLoginButtonTextにカーソルを置くと、値が新しい値に設定されます。ただし、コントロールの読み込みが終了すると、テキストは元のテキストでレンダリングされます。あなたはログインボタンへの参照を取得し、それがTextプロパティの設定最初にLogin制御のFindControl方法を使用する必要がASP.NETログインコントロールのプロパティが正しく動作しない

(From WebUserControl1.cs) 

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.UI; 
using System.Web.UI.WebControls; 

namespace test 
{ 
    public partial class WebUserControl1 : System.Web.UI.UserControl 
    { 
     protected void Page_Load(object sender, EventArgs e) 
     { 
     LoginUser.LoginButtonText = "Test Button"; 
     } 
    } 
} 



(From WebUserControl1.ascx) 

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="WebUserControl1.ascx.cs" Inherits="test.WebUserControl1" %> 
    <asp:Login ID="LoginUser" runat="server" EnableViewState="false" 
     RenderOuterTable="false" onauthenticate="LoginUser_Authenticate"> 
     <LayoutTemplate> 
      <span class="failureNotification"> 
       <asp:Label ID="FailureText" runat="server"></asp:Label> 
      </span> 
      <asp:ValidationSummary ID="LoginUserValidationSummary" runat="server" CssClass="failureNotification" 
       ValidationGroup="LoginUserValidationGroup"/> 
      <div class="accountInfo"> 
       <fieldset class="login"> 
        <p> 
         <asp:Label ID="UserNameLabel" runat="server" AssociatedControlID="UserName">Username:</asp:Label> 
         <asp:TextBox ID="UserName" runat="server" CssClass="textEntry"></asp:TextBox> 
         <asp:RequiredFieldValidator ID="UserNameRequired" runat="server" ControlToValidate="UserName" 
          CssClass="failureNotification" ErrorMessage="User Name is required." ToolTip="User Name is required." 
          ValidationGroup="LoginUserValidationGroup">*</asp:RequiredFieldValidator> 
        </p> 
        <p> 
         <asp:Label ID="PasswordLabel" runat="server" AssociatedControlID="Password">Password:</asp:Label> 
         <asp:TextBox ID="Password" runat="server" CssClass="passwordEntry" TextMode="Password"></asp:TextBox> 
         <asp:RequiredFieldValidator ID="PasswordRequired" runat="server" ControlToValidate="Password" 
          CssClass="failureNotification" ErrorMessage="Password is required." ToolTip="Password is required." 
          ValidationGroup="LoginUserValidationGroup">*</asp:RequiredFieldValidator> 
        </p> 
        <p> 
         <asp:CheckBox ID="RememberMe" runat="server"/> 
         <asp:Label ID="RememberMeLabel" runat="server" AssociatedControlID="RememberMe" CssClass="inline">Keep me logged in</asp:Label> 
        </p> 
       </fieldset> 
       <p class="submitButton"> 
        <asp:Button ID="LoginButton" runat="server" CommandName="Login" Text="Log In" ValidationGroup="LoginUserValidationGroup"/> 
       </p> 
      </div> 
     </LayoutTemplate> 
    </asp:Login> 
+0

それがあれば役立つだろうあなたのコードを掲載しました。 – ShellyFM

+0

コードを投稿できますか? –

答えて

0

、これはこれを行う方法です。

Button btnLogin = (Button)LoginUser.FindControl("LoginButton"); 
btnLogin.Text = "Test Button"; 
関連する問題