我使用了一个名为dd1的下拉框来显示诸如选择卡,签证,主卡之类的卡的列表。当我在dd1中将选择卡用作默认视图时,当显示签证或主卡时,我不应显示任何文本框它应该显示文本框和标签,询问姓名和卡号等。我能够在选择签证或主卡时获得标签和文本框,但在选择卡时无法获得默认视图(这是dd1中的第一个选项)
这是代码
<asp:DropDownList ID="dd1" runat="server" AutoPostBack="true" OnSelectedIndexChanged="dd1_SelectedIndexChanged1">
<asp:ListItem Text="---Select amount" Selected="True" Value="0"></asp:ListItem>
<asp:ListItem Text="Master card" Value="1"></asp:ListItem>
<asp:ListItem Text="Maestro" Value="2"></asp:ListItem>
<asp:ListItem Text="Visa" Value="3"></asp:ListItem>
<asp:ListItem Text="Visa Debit" Value="4"></asp:ListItem>
<asp:ListItem Text="Post office Credit card" Value="5"></asp:ListItem>
</asp:DropDownList>
<asp:MultiView ID="multiview" ActiveViewIndex="-1" runat="server">
<asp:View ID="viewtext" runat="server">
<p>
<asp:Label ID="cardname" runat="server" Text="Name on card"></asp:Label>
<asp:TextBox ID="text1" runat="server" Text=""></asp:TextBox>
</p>
<p>
<asp:Label ID="cardnumber" runat="server" Text="Card number"></asp:Label>
<asp:TextBox ID="text2" runat="server"></asp:TextBox>
</p>
后面的代码如下:
public partial class WebForm3 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (IsPostBack)
return;
}
protected void dd1_SelectedIndexChanged1(object sender, EventArgs e)
{
if (dd1.SelectedValue=="1")
{
multiview.ActiveViewIndex = 0;
}
}
}
请帮助我。。谢谢您。
最佳答案
它在我这边工作。像下面
<asp:DropDownList ID="dd1" runat="server" AutoPostBack="true" OnSelectedIndexChanged="dd1_SelectedIndexChanged1">
<asp:ListItem Text="---Select amount" Selected="True" Value="0"></asp:ListItem>
<asp:ListItem Text="Master card" Value="1"></asp:ListItem>
<asp:ListItem Text="Maestro" Value="2"></asp:ListItem>
<asp:ListItem Text="Visa" Value="3"></asp:ListItem>
<asp:ListItem Text="Visa Debit" Value="4"></asp:ListItem>
<asp:ListItem Text="Post office Credit card" Value="5"></asp:ListItem>
</asp:DropDownList>
<asp:MultiView ID="multiview" ActiveViewIndex="0" runat="server">
<asp:View ID="viewtext" runat="server">
<p>
Default View
</p>
</asp:View>
<asp:View ID="view1" runat="server">
<p>
Master card
</p>
</asp:View>
<asp:View ID="view2" runat="server">
<p>
Maestro
</p>
</asp:View>
<asp:View ID="view3" runat="server">
<p>
Visa
</p>
</asp:View>
<asp:View ID="view4" runat="server">
<p>
Visa Debit
</p>
</asp:View>
<asp:View ID="view5" runat="server">
<p>
Post office Credit card
</p>
</asp:View>
</asp:MultiView>
码
protected void dd1_SelectedIndexChanged1(object sender, EventArgs e)
{
if (dd1.SelectedItem != null)
{
multiview.ActiveViewIndex = Convert.ToInt16(dd1.SelectedValue);
}
}
关于c# - 我使用了一个下拉框,根据下拉框中的选项加载其他文本框,但无法获取默认 View ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21153749/