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





}
}