温馨提示:代码在线浏览功能只能做为源码浏览参考,如果想更进一步了解该代码请下载:SpaceBuilder v1.1源代码
1//------------------------------------------------------------------------------ 2
// <copyright company="Tunynet"> 3
// Copyright (c) Tunynet Inc. All rights reserved. 4
// </copyright> 5
//------------------------------------------------------------------------------ 6
7
using System; 8
using System.Collections.Generic; 9
using System.ComponentModel; 10
using System.Drawing; 11
using System.Data; 12
using System.Text; 13
using System.Web.UI.WebControls; 14
using SpaceBuilder.Components; 15
using TunyNet.Data.Utils; 16
using SpaceBuilder.Configuration; 17
18
namespace SpaceBuilder.Web.Controls 19
{ 20
/// <summary> 21
/// 站点友情链接列表显示的Repeater 22
/// </summary> 23
public partial class SiteLinkRepeater : DataList 24
{ 25
public SiteLinkRepeater() 26
{ 27
28
} 29
30
protected override void OnLoad(EventArgs e) 31
{ 32
base.OnLoad(e); 33
this.SetLayoutInfo(); 34
} 35
36
protected override void Render(System.Web.UI.HtmlTextWriter writer) 37
{ 38
this.Bind(); 39
base.Render(writer); 40
} 41
42
43
private void SetLayoutInfo() 44
{ 45
this.RepeatLayout = RepeatLayout.Flow; 46
this.RepeatColumns = this.displayItemCount; 47
} 48
49
public void Bind() 50
{ 51
this.ItemDataBound += new DataListItemEventHandler(Datalist_ItemDataBound); 52
53
SpaceBuilder.Components.SiteLinkQuery query = new SiteLinkQuery(); 54
55
56
57
query.categoryID = this.linkCategory; 58
query.IgnorePaging = true; 59
query.MaxRecords = 500; 60
query.LinkType = this.linkType; 61
query.enable = BaseLinkEnabled.Enabled; 62
63
if (this.displayItemCount > 0) 64
{ 65
query.PageSize = this.displayItemCount; 66
} 67
else 68
{ 69
query.PageSize = query.MaxRecords; 70
} 71
query.SortBy = this.SortBy; 72
query.SortOrder = this.SortOrder; 73
74
PagingDataSet<SpaceBuilder.Components.SiteLink> siteList = SpaceBuilder.Components.SiteLinks.GetSiteLinks(query); 75
76
if (siteList.TotalRecords > 0) 77
{ 78
this.DataSource = siteList.Records; 79
this.DataBind(); 80
} 81
else 82
{ 83
this.DataSource = null; 84
this.DataBind(); 85
} 86
87
} 88
89
90
protected void Datalist_ItemDataBound(object Sender, DataListItemEventArgs e) 91
{ 92
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) 93
{ 94
SpaceBuilder.Components.SiteLink site = (SpaceBuilder.Components.SiteLink)e.Item.DataItem; 95
96
if (site != null) 97
{ 98
Literal literal = e.Item.FindControl("literal") as Literal; 99
if (literal != null) 100
{ 101
if (site.LinkType == BaseLinkType.Image) 102
{ 103
literal.Text = string.Format("<a href='{0}' target='{1}' title='{2}'><img border='0px' src='{3}' alt='{4}' /></a>", site.LinkHref, 104
"_blank", site.Title, this.ResolveUrl(SBConfiguration.Instance().LinkImagesPath + site.ImageUrl), site.LinkTitle); 105
} 106
else 107
{ 108
literal.Text = string.Format("<a href='{0}' target='{1}' title='{2}'>{3}</a>", site.LinkHref, 109
"_blank", site.LinkTitle, site.Title); 110
} 111
112
//literal.Text = "<dd>" + literal.Text + "</dd>"; 113
} 114
} 115
} 116
else if (e.Item.ItemType == ListItemType.Header || e.Item.ItemType == ListItemType.Footer) 117
{ 118
HyperLink more = e.Item.FindControl("More") as HyperLink; 119
if (more != null) 120
{ 121
more.Text = ResourceManager.GetString("More"); 122
//more.NavigateUrl = ChannelUrls.Instance(); 123
} 124
} 125
} 126
127
属性 179
} 180
} 181





}