快速业务通道

ASP.NET自定义控件 第八天 显示多个条目星级评分的列表控件

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-20
.ColumnSpan = 2;   if (TitleTemplate != null)   {     _titleTemplateContainer = new TitleTemplateContainer(this);     TitleTemplate.InstantiateIn(_titleTemplateContainer);     cell.Controls.Add(_titleTemplateContainer);   }   else   {     cell.Text = Title;   }   item.DataBind(); } private void CreateSubTitle(Table t) {   BarChartItem item = new BarChartItem(BarChartItemType.SubTitle);   t.Rows.Add(item);   TableCell cell = new TableCell();   item.Cells.Add(cell);   cell.ColumnSpan = 2;   cell.Text = SubTitle; } private int CreateAllItems(Table t, IEnumerable data, bool useDataSource) {   int itemCount = 0;   Items.Clear();   foreach (object o in data)   {     BarChartItemType itemType = BarChartItemType.Item;     BarChartItem item = CreateBarChartItem(t, itemType, o, useDataSource);     _items.Add(item);     itemCount++;   }   return itemCount; } private BarChartItem CreateBarChartItem(Table t, BarChartItemType itemType, object dataItem, bool useDataSource) {   BarChartItem item = new BarChartItem(itemType);   TableCell labelCell = CreateLabelCell(item);   TableCell valueCell = CreateScoreCell(item);   BarChartItemEventArgs argsCreated = new BarChartItemEventArgs (item);   OnBarChartCreated(argsCreated);   t.Rows.Add(item);   if (useDataSource)   {     item.DataItem = dataItem;     BindLabelCell(labelCell, dataItem);     BindValueCell(valueCell, dataItem);     BarChartItemEventArgs argsData = new BarChartItemEventArgs (item);     OnBarChartDataBound(argsData);   }   return item; } private TableCell CreateLabelCell(BarChartItem item) {   TableCell cell = new TableCell();      item.Cells.Add(cell);   return cell; } private TableCell CreateScoreCell(BarChartItem item) {   TableCell cell = new TableCell();   item.Cells.Add(cell);   string starPath = Page.ClientScript.GetWebResourceUrl(this.GetType (), "ControlLibrary.Image.stars.gif");   Panel panBg = new Panel();   panBg.Style.Add(HtmlTextWriterStyle.Width, "80px");   panBg.Style.Add(HtmlTextWriterStyle.Height, "16px");   panBg.Style.Add(HtmlTextWriterStyle.TextAlign, "left");   panBg.Style.Add(HtmlTextWriterStyle.Overflow, "hidden");   panBg.Style.Add(HtmlTextWriterStyle.BackgroundImage, starPath);   panBg.Style.Add("background-position", "0px -32px");   panBg.Style.Add("background-repeat", "repeat-x");   cell.Controls.Add(panBg);   Panel panCur = new Panel();            panCur.Style.Add(HtmlTextWriterStyle.Height, "16px");   panCur.Style.Add(HtmlTextWriterStyle.BackgroundImage, starPath);   panCur.Style.Add("background-position", "0px 0px");   panCur.Style.Add("background-repeat", "repeat-x");   panBg.Controls.Add(panCur);      return cell; } private void BindLabelCell(TableCell cell, o

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号