基于ASP.NET的WEBMENU的数据操作1
你当前的位置:烁空 --> 技术文档全集

摘要:越来越多的网页中使用到了菜单,一般说来,菜单制作的方法比较多,编程的语言基本上是JAVASCRIPT或者VBSCRIPT这两种,这种菜单一旦制作好就不能改变,修改起来比较麻烦。本文讲解WEBMENU控件,同时给出实例,讲菜单和数据库结合起来,实现动态的菜单。

前言:

下拉菜单技术常常在大型网站(如微软公司网站)中被用于网站导航,这样可有效的缩短浏览者定位至特定内容的时间。用JAVASCRIPT或VBSCRIPT虽可实现该项效果,但需要学习脚本语言和DHTML。或者,还可以用DREAMWEAVER和CSS也能制作出(多级)下拉菜单。

对菜单的显示过程进行一下分析,可以发现以下几点:

1 当鼠标移动到文字(或图像)上,菜单显示;

2 鼠标从文字(或图像)上移开(除菜单外的位置),菜单消失;

3 鼠标从文字(或图像)移动到菜单上,菜单保持显示(这是关键);鼠标从菜单移开,菜单消失。

4 对于多级菜单还要保持上下级菜单的同步。

5当鼠标移动到菜单项目上,菜单项的外观(前景,背景或边框)变化。

这些特点实现了菜单的部分功能,某一些菜单功能无法通过或者不方便通过脚本语言来操作,例如,怎么来实现菜单的DISENABLE和ENABLE功能。还有怎么来实现菜单的“过程操作”(也就是没有点击“打开文件”,就无法进行“编辑”功能),这些方法均无法通过脚本来实现,同时脚本语句嵌入HTML语言中,结构复杂,写作麻烦,技术要求较高,不能迅速掌握,现在也有一些写作网页菜单的工具,通过软件操作,生成脚本,然后拷贝脚本到网页里,尽管这样也可以实现网页菜单,但是也无法实现上文所说的部分功能。

       第一部分:WEB MUNU控件

       在网上搜索到了一个很有用的控件,WEBMENU FOR ASP.NET(HTTP://WWW.COALESYS.COM),这个控件除了能够实现生成脚本语言的功能之外,就是还可以支持数据库操作,通过在数据库里设置一些属性的值,可以实现菜单的相关功能。而且该控件生成的脚本可以面向国中内核的浏览器,做到了真正的兼容,使用起来没有后顾之忧。

       使用之前要注册。注册后就可以把注册码嵌入ASP.NET的后台,以便分发部署的时候不会出错。WEB MENU的LICENSE KEY是一个字符串,格式为:"用户名:公司名称:序列号"具体使用如下:

WEBMENU.USERDATA = "JOHN DOE:ACME CORP:1234567890";
 
//如果没有公司名称,使用方法如下:
WEBMENU.USERDATA = "JOHN DOE::1234567890";
 

具体使用这个控件的方法如下:

       1:拷贝DLL到解决方案的BIN目录。

       2:在您的页面上注册。语句为:

<%@ REGISTER TAGPREFIX="CSWM" NAMESPACE="COALESYS.WEBMENU" ASSEMBLY="COALESYS.WEBMENU" %>
 

       3:在页面上放置WEB MENU对象。

<CSWM:WEBMENU
          ID = "QUICKMENU"
          CLEARPIXELIMAGE = "/IMAGES/CLEARPIXEL.GIF"
          POPUPICON = "/IMAGES/POPUP.GIF"
          SELECTEDPOPUPICON = "/IMAGES/SELECTEDPOPUP.GIF"
          RUNAT = "SERVER">
</CSWM:WEBMENU>
 

       4:添加菜单组和菜单项。

<CSWM:WEBMENU
          ID = "QUICKMENU"
          CLEARPIXELIMAGE = "/IMAGES/CLEARPIXEL.GIF"
          POPUPICON = "/IMAGES/POPUP.GIF"
          SELECTEDPOPUPICON = "/IMAGES/SELECTEDPOPUP.GIF"
          RUNAT = "SERVER">
 
          <CSWM:GROUP
                    CAPTION = "HOME"
                    RUNAT="SERVER">
                   
                    <CSWM:ITEM
                               CAPTION = "NEWS"
                               URL = "NEWS.ASPX"
                               RUNAT = "SERVER" />
 
          </CSWM:GROUP>
 
</CSWM:WEBMENU>
 
 

       5:添加嵌套菜单组和菜单项。

<CSWM:WEBMENU
          ID = "QUICKMENU"
          CLEARPIXELIMAGE = "/IMAGES/CLEARPIXEL.GIF"
          POPUPICON = "/IMAGES/POPUP.GIF"
          SELECTEDPOPUPICON = "/IMAGES/SELECTEDPOPUP.GIF"
          RUNAT = "SERVER">
 
          <CSWM:GROUP
                    CAPTION = "HOME"
                    RUNAT="SERVER">
                   
                    <CSWM:ITEM
                               CAPTION = "NEWS"
                               URL = "NEWS.ASPX"
                               RUNAT = "SERVER" />
 
                    <CSWM:ITEM
                               CAPTION = "ABOUT"
                               URL = "ABOUT.ASPX"
                               RUNAT = "SERVER" />
                              
                    <CSWM:ITEM
                               CAPTION = "PRODUCTS"
                               RUNAT = "SERVER">
 
                               <CSWM:GROUP RUNAT="SERVER">
 
                                         <CSWM:ITEM
                                                   CAPTION = "SUPER WIDGET"
                                                   URL = "SUPERWIDGET.ASPX"
                                                   RUNAT = "SERVER" />
 
                                         <CSWM:ITEM
                                                   CAPTION = "SUPER WIDGET PRO"
                                                   URL = "SUPERWIDGETPRO.ASPX"
                                                   RUNAT = "SERVER" />
                                                  
                               </CSWM:GROUP>
 
                    </CSWM:ITEM>
                                                                      
          </CSWM:GROUP>
 
</CSWM:WEBMENU>