Session变量似乎更容易使用:
Default.aspx的标记:
<asp:Wizard runat="server" ID="wizAwesome" FinishDestinationPageUrl="~/TestPage.aspx" OnFinishButtonClick="wizAwesome_FinishButtonClick">
<WizardSteps>
<asp:WizardStep ID="stepRock" runat="server" Title="Rock!">
This is a wizard step.
<asp:HiddenField runat="server" ID="hiddenName" Value="Juliet" />
</asp:WizardStep>
</WizardSteps>
</asp:Wizard>
Default.aspx.cs
protected void wizAwesome_FinishButtonClick(object sender, WizardNavigationEventArgs e)
{
Session["hiddenName"] = hiddenName.Value;
}
TestPage.aspx.cs
protected void Page_Load(object sender, EventArgs e)
{
lblName.Text = Session["hiddenName"].ToString();
}
尝试将您的HiddenField放在向导的外面并创建一个FinishNavigationTemplate。在那里你创建一个带有PostBackUrl的按钮,它将把HiddenField发布到下一页。看起来,使用刚刚重定向到的FinishDestinationPageUrl属性时,向导不会发布到下一页。我有一个代码示例,如果你需要它 – 2009-09-30 20:56:20