新闻列表控件+新闻控件+幻灯片控件
最近在开发网站项目,为了偷懒在网上找了几个新闻列表控件,但是用起来感觉差强人意,不是bug太多就是功能不够强大,在应付新闻列表各种样式时更感到有心无力。于是自己动手写了三个经常用到的控件,在使用过程中感觉还不错,现上传与各位分享,也希望能与各位一起测试改进。
1、YXL.Controls.dll ,控件dll,通过工具箱进行加载
2、YXL.DbHelper.dll,数据库操作类
二、控件功能
1、新闻列表控件
(1)支持分页功能
(2)支持自定义列表内容,扩展性强
(3)支持列表前缀,自定义前缀数
(4)支持列表后缀,自定义后缀数
(5)支持格式化时间
(6)支持列表滚动,上下左右滚动方式
(7)支持列表前后缀断言显示
(8)支持列表内容过滤
2、新闻控件
(1)支持新闻图片
(2)支持新闻标题、信息、内容格式化
(3)支持自定义关闭按钮
(4)支持上下篇新闻
(5)支持自定义上下篇显示方式
(6)支持新闻标题、内容过滤
3、幻灯片控件(特注:此控件内封装了jQuery.KinSlideshow幻灯片插件,感谢此作者,特此声明)
(1)支持标题长度截取
(2)自定义切换模式
(3)自定义切换方向
三、示例
1、新闻列表控件
HTML:
<YXL:NewsList ID="NewsList1" runat="server" ConnectionStringName="SqlServer2" TableName="News"
PrimaryKey="NewsId" RepeatDirection="Vertical" ListCss="ListCss" Width="600">
<News ShowNews="true" Format="<a target='_blank' href='News.aspx?Id={0}'>{1}</a>"
Arguments="NewsId,NewsTitle" TitleField="NewsTitle" TitleLength="15" ShowEllipsis="true"
AllowFiltering="true" />
<Prefix ShowPrefix="true" Format="<img src='Resources/Images/add.png' />" Top="0"
PredicateArguments="NewsIsRecommended" />
<Suffix ShowSuffix="true" Format="<img src='Resources/Images/alert24.png' />" Top="0"
PredicateArguments="NewsIsPublished" />
<NewsTime ShowNewsTime="true" Field="NewsTime" FormatDescriptor="[MM-dd]" Position="Footer" />
<Pager AllowPaging="true" PageSize="10" PageIndex="1" ShowPageInfo="true" />
<PagerSettings Mode="Numeric" Position="TopAndBottom" PageButtonCount="10" Visible="true" />
<Slide AllowSliding="false" Direction="Up" Width="400" Interval="1000" Speed="1000" />
</YXL:NewsList>C#
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
this.NewsList1.News.Filter = new YXL.Controls.NewsList.FilterHandler(Filter);
this.NewsList1.Prefix.Predicate = new YXL.Controls.NewsList.PredicateHandler(PrefixPredicate);
this.NewsList1.Suffix.Predicate = new YXL.Controls.NewsList.PredicateHandler(SuffixPredicate);
}
}
/// <summary>
/// 内容过滤函数
/// </summary>
/// <param name="content"></param>
/// <returns></returns>
private string Filter(string content)
{
content = System.Text.RegularExpressions.Regex.Replace(content, "[A-Z]+", "", System.Text.RegularExpressions.RegexOptions.IgnoreCase);
return content;
}
/// <summary>
/// 前缀显示断言
/// NewsIsRecommended位于PrefixArguments属性
/// </summary>
/// <param name="index">列表行序列</param>
/// <param name="row">列表行</param>
/// <returns></returns>
private bool PrefixPredicate(int index, DataRow row)
{
return Convert.ToBoolean(row["NewsIsRecommended"].ToString());
}
/// <summary>
/// 后缀显示断言
/// NewsIsPublished位于SuffixArguments属性
/// </summary>
/// <param name="index">列表行序列</param>
/// <param name="row">列表行</param>
/// <returns></returns>
private bool SuffixPredicate(int index, DataRow row)
{
return Convert.ToBoolean(row["NewsIsPublished"].ToString());
}
2、新闻控件
HTML:
<YXL:News ID="News2" runat="server" ConnectionStringName="SqlServer2" TableName="News"
NewsIdField="NewsId">
<Title Field="NewsTitle"></Title>
<NewsImage DescriptionField="NewsTitle" SrcFormat="Resources/Images/{0}.jpg" SrcArguments="NewsId"
Width="500" Height="300" AllowAdjusting="true" />
<Content Field="NewsContent" />
<Addition Format="新闻来源:{0} 作者:{1} 时间:{2} 点击量:{3}" Arguments="NewsFrom,NewsAuthor,NewsTime,HitCount" />
<DivideLine ShowFooterDivideLine="true" />
<CloseButton ShowCloseButton="true" ButtonType="Image" ImgSrc="Resources/Images/close.png" Text="【关闭】" />
<Adjacent Format="<a target='_self' href='News.aspx?Id={0}'>{1}</a>" Arguments="NewsId,NewsTitle"
RepeatDirection="Horizontal" PreviousLabel="上篇:" NextLabel="下篇:" />
</YXL:News>
3、幻灯片控件
HTML:
<YXL:ImageSlider ID="ImageSlider1" runat="server" ConnectionStringName="SqlServer2"
TableName="News">
<Image SrcFormat="Resources/Images/{0}.jpg" SrcArguments="NewsId" UrlFormat="News.aspx?Id={0}"
UrlArguments="NewsId" AllowAdjusting="false" />
<Title ShowTitle="true" Field="NewsTitle"></Title>
<Navigator ShowNavigator="true" Direction="Left" />
</YXL:ImageSlider>
四、更新日志
五、最新版本2011-5-10
1、新闻控件新增内容过滤功能
2、各控件默认样式显示时机的改进
2011-5-11
1、新闻列表控件新增内容过滤功能
2、新闻列表控件新增列表滚动功能
2011-5-13
1、改进新闻列表控件结构
2、改进列表滚动功能,新增上下左右滚动功能,支持文字、图片滚动
2011-5-14
1、改进新闻控件结构
2、改进新闻控件图片功能,支持图片缩放
3、改进幻灯片控件结构
2011-5-15
1、新闻列表新增前后缀断言显示功能
如有bug或建议,请给我留言,或Email:showlie@163.com