需要在CUW步骤中存储其他用户信息
//register.aspx
<p>
<b>HomeTown:</b><br /> <asp:TextBox ID = "HomeTown" runat ="server"></asp:TextBox>
</p>
<p>
<b>HomepageUrl:</b><br /> <asp:TextBox ID = "HomepageUrl" runat ="server"></asp:TextBox>
</p>
<p>
<b>Signature:</b><br /> <asp:TextBox ID = "Signature" runat ="server"></asp:TextBox>
</p>
</asp:WizardStep>
<asp:CompleteWizardStep runat="server" />
</WizardSteps>
</asp:CreateUserWizard>//这是WizardStep UserSettings = NewUserWizard.FindControl("UserSettings") as WizardStep背后代码的一部分;
// Programmatically reference the TextBox controls
TextBox HomeTown = UserSettings.FindControl("HomeTown") as TextBox;...ERROR Object reference not set to an instance of an object. 感谢你的帮助
发布于 2010-11-13 04:04:21
你很有可能已经找到了这个问题的答案,或者已经继续前进了,但我是在我自己的搜索中发现这个问题的,我想我可以为其他可能正在搜索的人提供一个答案。
上面示例的问题(除了顶部缺少的告诉我步骤ID的代码之外)是,您需要在向导的每个步骤中分别查找控件。因此,如果您在向导的第一步中查找超链接,则可以通过以下方式找到它:
TextBox HomeTown = (TextBox)UserSettings.WizardSteps[0].FindControl("HomeTown");如果您不想假定带有HomeTown文本框的步骤始终是集合中的第一步,则可以这样做:
WizardStep wizStep (WizardStep)wizSample.FindControl("SampleStepName");
TextBox HomeTown = (TextBox)wizStep.FindControl("HomeTown");在我的例子中,我正在寻找的控件是在一个TemplatedWizardStep中,所以我必须使用以下代码:
TemplatedWizardStep wizStep = (TemplatedWizardStep)wizSample.FindControl("SampleStepName");
Panel pnlSample =(Panel)wizStep.ContentTemplateContainer.FindControl("pnlSample");
pnlSample .Visible = true;注意:我使用的是向导类,因为CreateUserWizard类是基于向导的,所以我假设上面的代码对这两个类都适用。
https://stackoverflow.com/questions/3875436
复制相似问题