首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >带有asp.net注册表用户控件的下拉列表

带有asp.net注册表用户控件的下拉列表
EN

Stack Overflow用户
提问于 2012-12-24 21:42:13
回答 1查看 960关注 0票数 1

我已经在我的registeruser代码中添加了一个下拉列表,这样我就可以从我们的数据库中随机加载安全问题。

以下是代码;

代码语言:javascript
运行
复制
<asp:CreateUserWizard ID="RegisterUser" runat="server" EnableViewState="false"
                      CancelDestinationPageUrl="RegistrationFailed.aspx" DisableCreatedUser="true"
                      ContinueDestinationPageUrl="Login.aspx" LoginCreatedUser="false">
    <LayoutTemplate>
        <asp:PlaceHolder ID="wizardStepPlaceholder" runat="server"></asp:PlaceHolder>
        <asp:PlaceHolder ID="navigationPlaceholder" runat="server"></asp:PlaceHolder>
    </LayoutTemplate>
    <WizardSteps>
        <asp:CreateUserWizardStep ID="RegisterUserWizardStep" runat="server">
            <ContentTemplate>
                <span class="failureNotification">
                    <asp:Literal ID="ErrorMessage" runat="server"></asp:Literal>
                </span>
                <asp:ValidationSummary ID="RegisterUserValidationSummary" runat="server" CssClass="failureNotification" 
                     ValidationGroup="RegisterUserValidationGroup"/>
                <div class="accountInfo">
                    <fieldset class="register">
                        <legend>Account Information</legend>
                        'All other fields removed for brevity
                        <p>
                            <asp:Label ID="QuestionLabel" runat="server" AssociatedControlID="Question">Select Security Question:</asp:Label>
                            <asp:DropDownList ID="Question" runat="server">
                            </asp:DropDownList><br />
                            <i style="font-size: .7em;">If you forget your password you will be asked the security question you choose here and prompted to enter the answer you specify below.</i>
                            <asp:RequiredFieldValidator ID="rfvSecurityQuestion" runat="server" ControlToValidate="Question" 
                                 CssClass="failureNotification" ErrorMessage="&laquo; [Required]" ToolTip="A security question is required." 
                                 ValidationGroup="RegisterUserValidationGroup">*</asp:RequiredFieldValidator>     
                        </p>
                         <p>
                            <asp:Label ID="Answerlabel" runat="server" AssociatedControlID="Answer">Security Answer:</asp:Label>
                            <asp:TextBox ID="Answer" runat="server" CssClass="textEntry"></asp:TextBox>
                            <asp:RequiredFieldValidator ID="AnswerRequired" runat="server" ControlToValidate="Answer" 
                                 CssClass="failureNotification" ErrorMessage="&laquo; [Required]" ToolTip="Security answer is required." 
                                 ValidationGroup="RegisterUserValidationGroup">*</asp:RequiredFieldValidator>
                        </p>
                    </fieldset>
                    <p class="submitButton">
                        <asp:Button ID="CreateUserButton" runat="server" CommandName="MoveNext" Text="Create User" 
                             ValidationGroup="RegisterUserValidationGroup" CssClass="buttons" />
                    </p>
                </div>
            </ContentTemplate>
            <CustomNavigationTemplate>
            </CustomNavigationTemplate>
        </asp:CreateUserWizardStep>
    </WizardSteps>
</asp:CreateUserWizard>

我正在尝试将项目添加到代码背后的下拉列表中。智能感知看不到任何带有问题id的控件,但找到了RegisterUser.Question,但我无法将列表标题添加到其中。

代码语言:javascript
运行
复制
 Protected Sub Page_PreLoad(sender As Object, e As EventArgs) Handles Me.PreLoad

        Dim ddl As DropDownList = TryCast(FindControl(RegisterUser.Question), DropDownList)
        'If ddl Is Nothing Then MsgBox("nothing") ' for testing if ddl is found
        'Dim itemlist As New List(Of String)
        'itemlist = GetSecurityQuestionsforDDL()
        'For Each item As String In itemlist
        ddl.Items.Add(New ListItem("did this get added?"))
        'Next

End Sub

页面加载,但在下拉列表中没有问题。如何找到dropdown控件来添加listitems?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-12-24 23:59:59

我不喜欢这样,因为它看起来很乱。下面是C#。你可以很容易地重写成VB。我做了一个测试,并成功地找到了下拉列表。

代码语言:javascript
运行
复制
DropDownList oDDL =
    (DropDownList)RegisterUser.FindControl("CreateUserStepContainer$Question");

从这里获得了基本代码:http://romsteady.blogspot.com/2007/08/howto-find-controls-in-wizard.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14022145

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档