0

StreetNbrtxtを含むテキストにアクセスするいくつかのバリエーションを使用しました

1) Directly: Profile.StreetNbr = StreetNbrtxt.Text; (Didn't work)
2) Using FindControl: Profile.StreetNbr = ((TextBox)RegisterUserWizardStep.FindControl("StreetNbrtxt")).Text; ('Not a instantiated class' Error message)

さらに、Visual Studio Express 2012 の Account フォルダーにある事前にコード化されたファイルに追加されたテキスト ボックスに追加した値を確認できませんでした。

Register.aspx のコードは次のとおりです。

    <asp:CreateUserWizard runat="server" ID="RegisterUser" ViewStateMode="Disabled" OnCreatedUser="RegisterUser_CreatedUser" ActiveStepIndex="0">
    <LayoutTemplate>
        <asp:PlaceHolder runat="server" ID="wizardStepPlaceholder" />
        <asp:PlaceHolder runat="server" ID="navigationPlaceholder" />
    </LayoutTemplate>
    <WizardSteps>
        <asp:CreateUserWizardStep runat="server" ID="RegisterUserWizardStep">
            <ContentTemplate>
                <p class="message-info">
                    Passwords are required to be a minimum of <%: Membership.MinRequiredPasswordLength %> characters in length.
                </p>

                <p class="validation-summary-errors">
                    <asp:Literal runat="server" ID="ErrorMessage" />
                </p>

                <fieldset>
                    <legend>Registration Form</legend>
                    <ol>
                        <p>
                            <asp:Label runat="server" AssociatedControlID="UserName">User name</asp:Label>
                            <asp:TextBox runat="server" ID="UserName" />
                            <asp:RequiredFieldValidator runat="server" ControlToValidate="UserName"
                                CssClass="field-validation-error" ErrorMessage="The user name field is required." />
                        </p>
            :
            :
            :
            :
            :
                        <p>
                            <asp:Label ID="StreetNumberlbl" runat="server" AssociatedControlID="StreetNbrtxt">Street Number:</asp:Label>
                            <asp:TextBox ID="StreetNbrtxt" runat="server" CssClass="style11"></asp:TextBox>
                            <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="StreetNbrtxt"
                                CssClass="failureNotification" ErrorMessage="A street address number is required" ToolTip="Please insert your home address number"
                                ValidationGroup="RegisterUserValidationGroup">*</asp:RequiredFieldValidator>
                        </p>    
                    </ol>               
        <asp:Button runat="server" CommandName="MoveNext" Text="Register" />
         </fieldset>
            </ContentTemplate>

ユーザー入力テキストボックスから番地にアクセスする方法について何か考えはありますか?

4

1 に答える 1

0

CreateUserWizard制御は制御に基づいてWizardおり、ステップがあります。そのため、ステップ内でコントロールを見つける必要があります。あなたの場合、それは最初のステップにあります。このようにコントロールにアクセスできます。

TextBox StreetNbrtxt = 
(TextBox)RegisterUser.WizardSteps[0].
FindControl("CreateUserStepContainer").FindControl("StreetNbrtxt");

それがどのように機能するかを見ることができます。長い間私のために働いているので、これがあなたにとってもうまくいくことを願っています. ありがとう!

編集:公式 Web サイトでのウィザード コントロールの詳細については、こちらのリンクを参照してください。

于 2016-08-15T04:33:54.487 に答える