您目前尚未登陆,请选择【登陆】或【注册
首页->博客论坛->SpaceBuilder v1.0正式版源码>>BlogControls/Channel/ChannelBlogNavigation.cs>>源码在线查看
温馨提示:代码在线浏览功能只能做为源码浏览参考,如果想更进一步了解该代码请下载:SpaceBuilder v1.0正式版源码
普通视图
		            
1//------------------------------------------------------------------------------ 2// <copyright company="Tunynet"> 3// Copyright (c) Tunynet Network Technology Co., Ltd. All rights reserved. 4// </copyright> 5//------------------------------------------------------------------------------ 6 7using System; 8using System.Collections.Generic; 9using System.Text; 10using SpaceBuilder.Controls.BaseClasses; 11using System.Web.UI.WebControls; 12using SpaceBuilder.Blogs.Components; 13using SpaceBuilder.Components; 14using SpaceBuilder.Utils; 15using SpaceBuilder.Posts.Components; 16 17namespace SpaceBuilder.Blogs.Controls 18{ 19 public class ChannelBlogNavigation : TemplatedWebControl 20 { 21 protected override void OnInit(EventArgs e) 22 { 23 if (SkinName == null) 24 ExternalSkinFileName = "Blogs/Skin-ChannelBlogNavigation.ascx"; 25 else 26 ExternalSkinFileName = SkinName; 27 28 base.OnInit(e); 29 } 30 31 protected override void OnLoad(EventArgs e) 32 { 33 base.OnLoad(e); 34 EnsureChildControls(); 35 36 if (SBContext.Current.RawUrl.IndexOf("BlogRanks.aspx") > 0) 37 SeletedMenu = BlogNavigationType.BlogRanks; 38 39 if (SBContext.Current.RawUrl.IndexOf("PostRanks.aspx") > 0) 40 SeletedMenu = BlogNavigationType.WeblogPostRanks; 41 42 if (SBContext.Current.RawUrl.IndexOf("BlogTagMap.aspx") > 0) 43 SeletedMenu = BlogNavigationType.BlogTags; 44 45 if (!Page.IsPostBack) 46 { 47 PostFullTextQuery query = new PostFullTextQuery(); 48 query.ConvertFromQueryString(); 49 postKeyword.Text = query.PostKeyword; 50 } 51 52 InitMenu(); 53 MenuApplyStyleSheet(); 54 } 55 56 Child Controls 68 69 protected override void AttachChildControls() 70 { 71 blogHome = FindControl("BlogHome") as HyperLink; 72 weblogPostRanks = FindControl("WeblogPostRanks") as HyperLink; 73 blogRanks = FindControl("BlogRanks") as HyperLink; 74 blogTags = FindControl("BlogTags") as HyperLink; 75 myBlog = FindControl("MyBlog") as HyperLink; 76 77 postKeyword = FindControl("PostKeyword") as TextBox; 78 searchButton = FindControl("SearchButton") as Button; 79 searchButton.Click += new EventHandler(SearchButton_Click); 80 } 81 82 private void InitMenu() 83 { 84 blogHome.NavigateUrl = ChannelUrls.Instance().BlogHome(); 85 weblogPostRanks.NavigateUrl = ChannelUrls.Instance().WeblogPostRanks((int)BlogThreadSortBy.MostRecent); 86 blogRanks.NavigateUrl = ChannelUrls.Instance().BlogRanks((int)SortBlogsBy.Points); 87 blogTags.NavigateUrl = ChannelUrls.Instance().BlogTagMap(); 88 89 if (!SBContext.Current.User.IsAnonymous && SBContext.Current.User.UserType == UserType.PersonUser) 90 myBlog.NavigateUrl = UserUrls.Instance().BlogHome(SBContext.Current.User.UserName); 91 else 92 myBlog.Visible = false; 93 } 94 95 /// <summary> 96 /// 根据当前页面设置菜单样式 97 /// </summary> 98 private void MenuApplyStyleSheet() 99 { 100 switch (SeletedMenu) 101 { 102 case BlogNavigationType.BlogHome: 103 blogHome.CssClass = "selectedChannelNavigationMenu"; 104 break; 105 case BlogNavigationType.WeblogPostRanks: 106 weblogPostRanks.CssClass = "selectedChannelNavigationMenu"; 107 break; 108 case BlogNavigationType.BlogRanks: 109 blogRanks.CssClass = "selectedChannelNavigationMenu"; 110 break; 111 case BlogNavigationType.BlogTags: 112 blogTags.CssClass = "selectedChannelNavigationMenu"; 113 break; 114 case BlogNavigationType.MyBlog: 115 myBlog.CssClass = "selectedChannelNavigationMenu"; 116 break; 117 } 118 } 119 120 protected void SearchButton_Click(object sender, EventArgs e) 121 { 122 PostFullTextQuery query = new PostFullTextQuery(); 123 query.FullTextSearchType = FullTextSearchType.Blog; 124 query.PostKeyword = postKeyword.Text; 125 string searchPostsUrl = Globals.FullPathForSearchSite(ChannelUrls.Instance().BlogSearchResults() + "?" + query.ConvertToQueryString()); 126 Context.Response.Redirect(searchPostsUrl, true); 127 } 128 129 private BlogNavigationType seletedMenu; 130 public BlogNavigationType SeletedMenu 131 { 132 get { return seletedMenu; } 133 set { seletedMenu = value; } 134 } 135 136 /// <summary> 137 /// 频道菜单项 138 /// </summary> 139 public enum BlogNavigationType 140 { 141 BlogHome, 142 WeblogPostRanks, 143 BlogRanks, 144 BlogTags, 145 MyBlog, 146 } 147 148 } 149 150} 151 152
还没有找到您心仪的内容?请用.net源码大搜捕
代码片断 打包下载该项目完整源码:SpaceBuilder v1.0正式版源码