0
在ascx中使用asp:login,asp:forgotpassword和asp:createuserwizard控件时。 (例如registration.ascx),即使它存在于LayoutTemplate中,也找不到例如UserName。任何想法如何解决这个问题?使用ASP进行ASP.NET用户控制:CreateUserWizard
在ascx中使用asp:login,asp:forgotpassword和asp:createuserwizard控件时。 (例如registration.ascx),即使它存在于LayoutTemplate中,也找不到例如UserName。任何想法如何解决这个问题?使用ASP进行ASP.NET用户控制:CreateUserWizard
如果您在设计模式下打开智能标签进行控制,您将会看到有些步骤可以转换为模板进行定制。
CreateUserWizard http://img197.imageshack.us/img197/3823/7d4df5a594a1abdb8fdc8f1.png
对于CreateUserWizard控件,按自定义创建用户步骤,你会观察到,控制被转换成表格模板,你可以看到如何控制即用户名,密码命名...
<asp:CreateUserWizard ID="CreateUserWizard1" runat="server">
<WizardSteps>
<asp:CreateUserWizardStep runat="server" ID="CreateUserWizardStep1">
<ContentTemplate>
<table border="0">
<tr>
<td align="center" colspan="2">
Sign Up for Your New Account</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="UserNameLabel" runat="server" AssociatedControlID="UserName">User Name:</asp:Label>
</td>
<td>
<asp:TextBox ID="UserName" runat="server"></asp:TextBox>
.......
也知道如果你想从内部模板中找到控制权,你必须寻找模板FindControl
方法来达到你想要的控制。 找到用户名控制在上面的代码中,使用
CreateUserWizardStep1.TemplateControl.FindControl("UserName") as TextBox
希望这有助于解决您的问题
当使用母版里面,我没有得到任何错误。当在login.ascx中的usercontrol中插入时,我得到: UserLogin:LayoutTemplate不包含带用户名的ID用户名的IEditableTextControl。 –
2009-09-20 13:24:02
你从哪里得到这个错误? – Myra 2009-09-20 13:43:58