1.拖一个标题控件<asp:Menu>,设置好标题,这里我们设置三个卡片。
代码如下 | 复制代码 |
<asp:Menu ID="Menu1" runat="server" Orientation="Horizontal" StaticEnableDefaultPopOutImage="False" OnMenuItemClick="Menu1_MenuItemClick"> <Items> <asp:MenuItem Text="tab1" Value="0"></asp:MenuItem> <asp:MenuItem Text="tab2" Value="1"></asp:MenuItem> <asp:MenuItem Text="tab3" Value="2"></asp:MenuItem> </Items> </asp:Menu> |
2.再<asp:Menu>后面拖一个<asp:MultiView>选项卡控件,这只相当一一个容器。
<asp:MultiView ID="MultiView1" runat="server" ActiveViewIndex="0">
</asp:MultiView>
3.再往<asp:MultiView>里拖入三个<asp:view>控件。
代码如下 | 复制代码 |
<asp:View ID="View1" runat="server"> <asp:View ID="View2" runat="server"> <asp:View ID="View3" runat="server"> |
4.给<asp:Menu >添加OnMenuItemClick="Menu1_MenuItemClick"方法。
代码
代码如下 | 复制代码 |
protected void Menu1_MenuItemClick(object sender, MenuEventArgs e) { MultiView1.ActiveViewIndex = Int32.Parse(e.Item.Value); } |
注意:<asp:MenuItem>的Value索引值要以0开始,要不会报错。
<asp:MultiView>中是否有行为属性:ActiveViewIndex="0"
下面看实例
打开visual studio .net 2005,新建一个website,我们选用vb.net语言。然后,往web窗体中拖拉一个menu控件,这个menu控件是负责控制各个选项卡的,也就是最终呈现在用户面前的界面,并且我们指定每个选项卡的图片样式,代码如下:
代码如下 | 复制代码 |
<asp:Menu ID="Menu1" Width="168px" runat="server" Orientation="Horizontal" StaticEnableDefaultPopOutImage="False" OnMenuItemClick="Menu1_MenuItemClick"> <Items> <asp:MenuItem ImageUrl="~/selectedtab.GIF" Text=" " Value="0"></asp:MenuItem> <asp:MenuItem ImageUrl="~/unselectedtab.GIF" Text=" " Value="1"></asp:MenuItem> <asp:MenuItem ImageUrl="~/unselectedtab.GIF" Text=" " Value="2"></asp:MenuItem> </Items> </asp:Menu> |
接着,拖拉一个multiview控件到WEB窗体中,放在刚才的menu控件下,注意,multiview控件中,分成很多个view选项卡,我们这里为了方便,暂时设置为3个选项卡,并且在每一个选项卡中,都设计一个表格,在实际应用中,这个表格就是当用户点选每个选项卡时显示给用户看的内容。代码如下
代码如下 | 复制代码 |
<asp:MultiView ID="MultiView1" runat="server" ActiveViewIndex="0" > <asp:View ID="Tab1" runat="server" > <table width="600" height="400" cellpadding=0 cellspacing=0> <tr valign="top"> <td class="TabArea" style="width: 600px"> TAB VIEW 1 INSERT YOUR CONENT IN HERE CHANGE SELECTED IMAGE URL AS NECESSARY </td> </tr> </table> </asp:View> <asp:View ID="Tab2" runat="server"> <table width="600px" height="400px" cellpadding=0 cellspacing=0> <tr valign="top"> <td class="TabArea" style="width: 600px"> TAB VIEW 2 TAB VIEW 3 |
最后,我们对menu的itemclick事件进行编写代码,在下面的代码中,为了演示效果,我们设置了两幅图片,当用户点选当前选项卡时,选项卡的图片显示出"selected tab"的图案,而其他的两个没点选的则显示灰色,代码如下
代码如下 | 复制代码 |
Protected Sub Menu1_MenuItemClick(ByVal sender As Object, _ ByVal e As MenuEventArgs) Handles Menu1.MenuItemClick MultiView1.ActiveViewIndex = Int32.Parse(e.Item.Value) Dim i As Integer For i = 0 To Menu1.Items.Count - 1 |
效果图
|