正在阅读:用Asp.net制作顶部导航控件用Asp.net制作顶部导航控件

2005-08-19 10:18 出处:PConline 作者:∮明天去要饭 责任编辑:xietaoming

  方法4:访问二级栏目的时候重新显示一级栏目

  该方法是访问二级栏目时调用的,访问二级栏目的时候,其父级栏目需要加粗并改变单元格背景。该方法命令为:showFirstMenuBySecondFile(strNowViewFile)。由于该方法与showFirstMenuByFile()方法大同小异,这里就不详细介绍了。具体可以查看源代码。

  方法5:访问二级栏目的时候显示二级栏目

  该方法是访问二级栏目的时候调用的,用来显示所有二级栏目,加粗当前访问的二级栏目,并改变当前位置,方法命名为:showSecondMenuByGrade(strNowViewFile)。该方法与showSecondMenu()方法也是大同小异,所以也不详细介绍了。

  接下来只要在Page_Load事件中通过显示或隐藏一级栏目和二级栏目就能达到图上的效果。Page_Load事件的代码如下:

         private void Page_Load(object sender, System.EventArgs e)
         {
              // 在此处放置用户代码以初始化页面
              if(!Page.IsPostBack)
              {
                   
                   //先根据地址栏的地址获取访问的文件,如:default.aspx                  
 
                   //获得url的相对路径
                   string strRequestUrl = Request.Url.AbsolutePath.ToString().Trim();
                   //获得当前访问的文件名
                   string strNowViewFile = strRequestUrl.Substring((strRequestUrl.LastIndexOf(@"/") + 1)).Trim();
                   
                   //根据取得的访问文件查找其对应的记录,以判断当前访问一级栏目还是二级栏目                 
                   //读取当前访问文件名对应的那条信息
                   DataView dv = ReadXmlDataView("HeadMenu.xml","LinkUrl = '" + strNowViewFile + "'","OrderID asc");
                   //当前访问栏目的上级栏目名称
                   string strParent = dv[0]["Parents"].ToString().Trim();
                   
                   //如果访问的是首页               
 
                   if(strNowViewFile.Equals("default.aspx") || strNowViewFile == null)
                   {
                       //显示所有一级栏目
                       showFirstMenu();
                   }
              
                   //如果访问的是一级栏目,并且不是首页               
 
                   else if(strParent.Equals("root"))
                   {                      
                       //重新显示一级栏目                   
                       showFirstMenuByFile(strNowViewFile);
                       //读取所有属于该一级栏目的二级栏目
                       showSecondMenu(strNowViewFile);                
                   }
                   
                   //否则当前访问的就是二级栏目
 
                   else
                   {
                       //显示一级栏目,同时加粗二级栏目所属的一级栏目,并改变该一级栏目的单元格背景
                       showFirstMenuBySecondFile(strNowViewFile);
                       //显示二级栏目,加粗并在当前访问的二级栏目名称前加。符号
                       showSecondMenuByGrade(strNowViewFile);
                   }
              }
     }

  以上就是顶部导航自定义控件的核心部份了,看完了后是不是觉得很简单?由于写的时候是为了应付项目的需要,因此匆匆忙忙就完工了,大家如果发现什么BUG,或是有什么好的意见可以联系我。控件的具体用法请看压缩包内的说明。

键盘也能翻页,试试“← →”键

相关文章

关注我们

最新资讯离线随时看 聊天吐槽赢奖品