jackyrong

  博客园 :: 首页 :: 联系 :: 订阅 订阅 :: 管理
  782 Posts :: 2 Stories :: 924 Comments :: 53 Trackbacks
最近学习asp.net 2.0 multiview控件的一点心得,原文发表在http://dev.yesky.com/msdn/30/2335530.shtml上,现转回这里

   在asp.net 2.0中,增加了许多新的控件和功能,大大方便了开发者的开发。这次要讲解的是在asp.net 2.0中新增的multiview控件的使用。所谓multiview控件,实际上是有点象在c/s开发中很常见的tabcontrol控件,可以在一个页面中,放置多个"view"(我们称为选项卡),比如可以用multiview控件,可以让用户在同一页面中,通过切换到每个选项卡,从而看到要看的内容,而不用每次都重新打开一个新的窗口。本文,将以visual studio .net 2005 为例,说明如何使用asp.net 2.0中的multiview控件。

  首先,打开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
INSERT YOUR CONENT IN HERE
CHANGE SELECTED IMAGE URL AS NECESSARY
</td>
</tr>
</table>
</asp:View>
<asp:View ID="Tab3" runat="server">
<table width="600px" height="400px" cellpadding=0 cellspacing=0>
<tr valign="top">
<td class="TabArea" style="width: 600px">

TAB VIEW 3
INSERT YOUR CONENT IN HERE
CHANGE SELECTED IMAGE URL AS NECESSARY
</td>
</tr>
</table>
</asp:View>
</asp:MultiView>

  最后,我们对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
  If i = e.Item.Value Then
   Menu1.Items(i).ImageUrl = "selectedtab.gif"
  Else
   Menu1.Items(i).ImageUrl = "unselectedtab.gif"
  End If
 Next
End Sub

posted on 2006-03-16 08:21 jackyrong的世界 阅读(8244) 评论(8)  编辑 收藏 网摘 所属分类: .NET

Feedback

#1楼  2006-03-16 08:26 neuhawk      
可是不能象ie webcontrol那样子,换tab不刷新吧?
  回复  引用  查看    

#2楼  2006-08-07 17:42 - -|| [未注册用户]
麻烦提供那两个图片(selectedtab.gif 和unselectedtab.gif)的下载啊....实在不知道你那图片是怎么做的....没图片实在做不出你那种效果....
  回复  引用    

#3楼  2006-09-13 15:15 壮志      
嗯 有没有不需要刷新页面就切换的选项卡
  回复  引用  查看    

#4楼  2006-12-01 11:37 zcc [未注册用户]
不行,不能用
  回复  引用    

#5楼  2007-01-15 11:43 赵志扬      
@neuhawk
不刷新的话,放到ajax的updatapanel里就行了
  回复  引用  查看    

#6楼  2007-02-15 11:12 扫把头 [未注册用户]
想做无刷新甘简单,用AJAX米得喽,将D野套在UpdatePanel里面就搞好啦.
  回复  引用    

麻烦提供那两个图片(selectedtab.gif 和unselectedtab.gif)的下载啊
  回复  引用    

#8楼  2007-04-11 10:32 yan63 [未注册用户]
图片:http://www.codeproject.com/aspnet/TabControl.asp
  回复  引用    





标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
Google站内搜索

China-pub 计算机图书网上专卖店!6.5万品种 2-8折!
近千种 9-95 新二手计算图书火热销售中!
开发者征途系统新作:《设计模式——基于C#的工程化实现及扩展》

相关文章:

相关链接: