您目前尚未登陆,请选择【登陆】或【注册
首页->博客论坛->SpaceBuilder v1.0正式版源码>>BlogControls/Channel/ListPosts.cs>>源码在线查看
温馨提示:代码在线浏览功能只能做为源码浏览参考,如果想更进一步了解该代码请下载:SpaceBuilder v1.0正式版源码
当前文件:文件类型 SpaceBuiderV10Source/BlogControls/Channel/ListPosts.cs打开代码结构图
普通视图
		            
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 SpaceBuilder.Components; 12using System.Web.UI.WebControls; 13using SpaceBuilder.Controls.Utils; 14using SpaceBuilder.Blogs.Components; 15using SpaceBuilder.Utils; 16using SpaceBuilder.Controls; 17using TunyNet.Utils; 18using TunyNet.Data.Utils; 19 20namespace SpaceBuilder.Blogs.Controls 21{ 22 public class ListPosts : TemplatedWebControl 23 { 24 SBContext wlContext; 25 26 protected override void OnInit(EventArgs e) 27 { 28 if (SkinName == null) 29 ExternalSkinFileName = "Blogs/Skin-ListPosts.ascx"; 30 else 31 ExternalSkinFileName = SkinName; 32 33 wlContext = SBContext.Current; 34 35 base.OnInit(e); 36 } 37 38 Child Controls 49 50 protected override void AttachChildControls() 51 { 52 pageTitle = FindControl("PageTitle") as Literal; 53 title = FindControl("Title") as Literal; 54 55 pager = FindControl("Pager") as Pager; 56 pager2 = FindControl("Pager2") as Pager; 57 58 weblogPostsRepeater = FindControl("WeblogPostsRepeater") as Repeater; 59 weblogPostsRepeater.ItemDataBound += new RepeaterItemEventHandler(WeblogPostsRepeater_ItemDataBound); 60 } 61 62 protected override void OnLoad(EventArgs e) 63 { 64 base.OnLoad(e); 65 EnsureChildControls(); 66 67 /* 68 TagName={0} 69 */ 70 if (!ValueHelper.IsNullOrEmpty(wlContext.GetStringFromQueryString("TagName", string.Empty))) 71 this.TagName = wlContext.GetStringFromQueryString("TagName", string.Empty); 72 73 if (!Page.IsPostBack) 74 Bind(); 75 } 76 77 void Bind() 78 { 79 if (ValueHelper.IsNullOrEmpty(this.TagName)) 80 return; 81 82 Header.AddTitle(wlContext.SiteName + " :: 博客(blog)", Context); 83 84 title.Text=TagName; 85 86 BlogThreadQuery query = new BlogThreadQuery(); 87 query.TagName = this.TagName; 88 query.SortBy = BlogThreadSortBy.MostRecent; 89 query.SortOrder = SortOrder.Descending; 90 query.PageIndex = pager.PageIndex; 91 query.IsPublicFilter = true; 92 93 PagingDataSet<BlogThread> pds = BlogPosts.GetBlogThreads(query); 94 if (pds != null && pds.Records.Count > 0) 95 { 96 if (pager != null) 97 { 98 pager.TotalRecords = pds.TotalRecords; 99 pager.PageSize = query.PageSize; 100 } 101 if (pager2 != null) 102 { 103 pager2.TotalRecords = pds.TotalRecords; 104 pager2.PageSize = query.PageSize; 105 } 106 } 107 108 weblogPostsRepeater.DataSource = pds.Records; 109 weblogPostsRepeater.DataBind(); 110 } 111 112 private void WeblogPostsRepeater_ItemDataBound(object sender, RepeaterItemEventArgs e) 113 { 114 if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) 115 { 116 BlogThread post = (BlogThread)e.Item.DataItem; 117 if (post != null) 118 { 119 HyperLink subject = e.Item.FindControl("Subject") as HyperLink; 120 if (subject != null) 121 { 122 subject.Text = StringUtils.Trim(post.Subject, 20); 123 subject.ToolTip = post.Subject; 124 subject.NavigateUrl = BlogUrls.Instance().ShowPost(post); 125 subject.Attributes["target"] = "_blank"; 126 } 127 128 Literal blogPostType = e.Item.FindControl("BlogPostType") as Literal; 129 if (blogPostType != null) 130 blogPostType.Text = post.BlogPostTypeText; 131 132 HyperLink blogName = e.Item.FindControl("BlogName") as HyperLink; 133 if (blogName != null) 134 { 135 blogName.Text = post.Weblog.SectionName; 136 if (ValueHelper.IsNullOrEmpty(blogName.Text)) 137 blogName.Text = post.User.DisplayName; 138 139 blogName.ToolTip = string.Format("查看 {0} 的博客", blogName.Text); 140 blogName.NavigateUrl = UserUrls.Instance().BlogHome(post.Weblog.ApplicationKey); 141 blogName.Attributes["target"] = "_blank"; 142 } 143 144 Literal postDate = e.Item.FindControl("PostDate") as Literal; 145 if (postDate != null) 146 postDate.Text = Formatter.FormatDatePost(post.PostDate); 147 148 Literal commentCount = e.Item.FindControl("CommentCount") as Literal; 149 if (commentCount != null) 150 commentCount.Text = post.ReplyCount.ToString(); 151 152 Literal hitTimes = e.Item.FindControl("HitTimes") as Literal; 153 if (hitTimes != null) 154 hitTimes.Text = post.HitTimes.ToString(); 155 } 156 } 157 } 158 159 160 属性 173 174 } 175}
还没有找到您心仪的内容?请用.net源码大搜捕
代码片断 打包下载该项目完整源码:SpaceBuilder v1.0正式版源码