【转】-ajax中Accordion动态生成菜单代码

http://gangaccp.blog.163.com/blog/static/12635719220101010105811699/

ajax中Accordion动态生成菜单代码 

asp.net ajax 2010-11-10 11:00:53 阅读105 评论0    字号: 订阅

          这个例子我们就图书的分类列表,及点击率排前三的图书,就是在每个分类下显示排前三的图书

protected void DisplayHostBooks()
    {
        //的到所有书的分类信息
        IList<Category> list = CategoryManager.GetAllCategories();//这个是业务逻辑层的方法,获得所有的图书的类别。
        //循环将图书的分类添加到According控件的标题中
        foreach (Category itme in list)
        {
            //实例化一个AccordionPane控件
            AccordionPane ap = new AccordionPane();
            //实例化一个标签控件,用来显示分类名
            Label lblCategoryMenu = new Label();
            //指定标签的text属性为分类名
            lblCategoryMenu.Text = itme.Name;
            //将标签控件添加到AccordingPane标题部分
            ap.HeaderContainer.Controls.Add(lblCategoryMenu);
           

            //根据目录ID查找该分类对应的热门书,循环加入到内容菜单部分
            int id = itme.Id;//的到目录的id
            //根据分类的id 查找对应浏览量排前三名的书的信息
            IList<Book> bookList = BookManager.GetBooksByCategoryId(id);
            foreach (Book bitem in bookList)
            {
                HyperLink hlBookMenu=new HyperLink();
                hlBookMenu.Text=bitem.Title + "<br>";//指定HyperLink的Text的属性为书名
                hlBookMenu.NavigateUrl = "BookDetail.aspx?bid=" + id + "";
                //将书名超链接控件添加到AccordionPanel内容部分
                ap.ContentContainer.Controls.Add(hlBookMenu);
            }
            //将According Pane追加到According的Panes集合中
            Accordion1.Panes.Add(ap);
        }

posted @ 2011-05-22 10:05  上善若水-water  Views(469)  Comments(0)    收藏  举报