【问题标题】:Get access to ASP.Net CreateUserWizard buttons访问 ASP.Net CreateUserWizard 按钮
【发布时间】:2009-06-29 17:26:20
【问题描述】:
我在我的注册页面上使用了 CreateUserWizard。注册按钮是 CustomNavigationTemplate 的一部分。
我需要将注册按钮设置为 ASP:Panel 的默认按钮,但由于它位于模板内,因此无法这样做。我尝试这样做,但我无法使用 CreateUserWizard.FindControl、CreateUserWizard.WizardSteps(0).Controls(0).FindControl 或其他类似步骤找到“注册”按钮(这是此控件的一个已知问题)。
关于如何公开此按钮或以其他方式将其设置为面板的默认按钮的任何想法?
【问题讨论】:
标签:
asp.net
panel
login-control
【解决方案1】:
这就是我最终做到的方式:
-
引用 CreateWizard 按钮并分配给面板的默认按钮:
Dim RegisterButton as Button = Ctype(CreateUserWizardStep1.CustomNavigationTemplateContainer.FindControl("RegisterButton"), Button)
RegisterPanel.DefaultButton = RegisterButton.ID '或 RegisterButton.UniqueID
我无法使用上述内容,因为它给了我错误“'RegisterPanel' 的 DefaultButton 必须是 IButtonControl 类型的控件的 ID”
我终于创建了一个名为“RegisterButton”的虚拟按钮(与模板中的注册按钮同名)并使用 CSS 将其隐藏,并为其提供 OnClick '真正的'注册按钮的函数调用。
对于登录部分,我使用了这个:
Page.Form.DefaultButton = LoginButton.UniqueID