我在asp.net网页中使用向导控件。我在向导中添加了一些步骤。我想从向导中隐藏上一步和完成按钮。我没有得到如何做到这一点,请告诉我这里是我的向导来源
<asp:Wizard ID="Wizard1" runat="server" ActiveStepIndex="0" BackColor="#F7F6F3"
BorderColor="#CCCCCC" BorderStyle="Solid" BorderWidth="1px"
Font-Names="Verdana" Font-Size="0.8em" Height="85px"
onfinishbuttonclick="Wizard1_FinishButtonClick" Width="241px">
<HeaderStyle BackColor="#5D7B9D" BorderStyle="Solid" Font-Bold="True"
Font-Size="0.9em" ForeColor="White" HorizontalAlign="Left" />
<NavigationButtonStyle BackColor="#FFFBFF" BorderColor="#CCCCCC"
BorderStyle="Solid" BorderWidth="1px" Font-Names="Verdana" Font-Size="0.8em"
ForeColor="#284775" />
<SideBarButtonStyle BorderWidth="0px" Font-Names="Verdana" ForeColor="White" />
<SideBarStyle BackColor="#7C6F57" BorderWidth="0px" Font-Size="0.9em"
VerticalAlign="Top" />
<StepStyle BorderWidth="0px" ForeColor="#5D7B9D" />
<WizardSteps>
<asp:WizardStep runat="server" title="About You">
Enter Your Name:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</asp:WizardStep>
<asp:WizardStep runat="server" title="Fav Language" StepType="Finish">
<asp:DropDownList ID="DropDownList1" runat="server">
<asp:ListItem>C#</asp:ListItem>
<asp:ListItem>VB</asp:ListItem>
<asp:ListItem>Css</asp:ListItem>
</asp:DropDownList>
</asp:WizardStep>
<asp:WizardStep runat="server" Title="Ready">
<asp:Label ID="result" runat="server" Text="Label"></asp:Label>
</asp:WizardStep>
</WizardSteps>
</asp:Wizard>
我的c#代码就是这个
protected void Wizard1_FinishButtonClick(object sender, WizardNavigationEventArgs e)
{
result.Text = "Your name is " + TextBox1.Text+"<br/>";
result.Text += "<br/>Your Fav Language is " + DropDownList1.SelectedValue;
}
专家请告诉我该怎么做?
答案 0 :(得分:0)
您是否可以尝试创建一个css类'Hidden'并更改之前按钮的类。 但我不确定为什么要隐藏“完成按钮”^^
/* CSS */
.hidden
{
display:none;
}
/* C# */
Wizard1.StepPreviousButtonStyle.CssClass = "hidden";
答案 1 :(得分:0)
昨天我用代码隐藏了一个按钮。
private void Close(object sender, EventArgs e)
{
yourButton.Visible = !yourButton.Visible;
}
我不确定它是否会消失,如果没有,请添加上面的代码,它应该可以正常工作。
yourButton.Visible = false;
还有CSS和jQuery的选项。我的asp按钮看起来像什么以及我从哪里得到你的按钮的一个例子。
<asp:Button ID="Closeform" runat="server" Text ="Hide PageState" OnClick="Close" />
答案 2 :(得分:0)
我正在寻找一个不同问题的答案,并遇到了这个问题。我知道它是在一年前被问到的,但似乎没有人给出一个规范的答案。对于ASP.NET向导,您可以使用向导的相应NavigationTemplate
属性定义与每个步骤关联的按钮。以下是使用Start
,Step
和Finish
的示例。您可以为每个按钮分配命令,然后通过向导的事件处理程序(OnNextButtonClick
,OnPreviousButtonClick
等)绑定到命令。在Next
和Previous
处理程序中,您需要检查自己所处的步骤并采取相应措施。这当然只是表面上的问题。您可以取消导航并更多地自定义向导的行为。
的.aspx:
<asp:Wizard ID="myWiz" runat="server"
OnNextButtonClick="myWiz_NextButtonClick"
OnPreviousButtonClick="myWiz_PreviousButtonClick"
OnFinishButtonClick="myWiz_FinishButtonClick">
...
<StartNavigationTemplate>
<asp:Button ID="StartNextButton" CssClass="NavBtn" runat="server" CommandName="MoveNext" Text="Next" />
</StartNavigationTemplate>
<StepNavigationTemplate>
<asp:Button ID="StepPreviousButton" CssClass="NavBtn" runat="server" CausesValidation="False" CommandName="MovePrevious" Text="Previous" />
<asp:Button ID="StepNextButton" CssClass="NavBtn" runat="server" CommandName="MoveNext" Text="Next" />
</StepNavigationTemplate>
<FinishNavigationTemplate>
<asp:Button ID="FinishPreviousButton" CssClass="NavBtn" runat="server" CausesValidation="False" CommandName="MovePrevious" Text="Previous" />
<asp:Button ID="FinishButton" CssClass="NavBtn" runat="server" CommandName="MoveComplete" Text="Finish" />
</FinishNavigationTemplate>
...
</asp:Wizard>
.aspx.cs:
protected void myWiz_NextButtonClick(object sender, WizardNavigationEventArgs e) {
switch (e.CurrentStepIndex) {
case 0:
// on step 0, moving to step 1
case 1:
// on step 1, moving to step 2
...
}
}
protected void myWiz_PreviousButtonClick(object sender, WizardNavigationEventArgs e) {
switch (e.CurrentStepIndex) {
case 1:
// on step 1, moving to step 0
case 2:
// on step 2, moving to step 1
...
}
}
protected void myWiz_FinishButtonClick(object sender, WizardNavigationEventArgs e) {
// Regardless of step, validate and perform wizard wrap up
}
如需进一步参考,请查看msdn page for the Wizard control的Wizard Appearance
部分。