国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

淺談ASP.NET報(bào)表控件

2019-11-14 16:33:32
字體:
供稿:網(wǎng)友

OWC似乎使用者居多,但看見有網(wǎng)友在帖中抱怨OWC在使用時(shí)需要許可證書,于是將其排除,我可不想BOSS在看報(bào)表時(shí)彈出一個(gè)“沒有許可證書”的窗口。

接著找到了ComponentOne的Web chart做出的各種效果圖,效果極佳。我一下子被迷住了,決定就是它,于是馬不停蹄的下了最新版100多M的安裝文件,又花一上午找了個(gè)可以用的注冊碼,再找了篇教程,OK萬事俱備,興匆匆的開始寫代碼。需求不復(fù)雜,在一個(gè)頁面上畫出多條折線圖即可,根據(jù)以往經(jīng)驗(yàn),這種大型商業(yè)共享軟件在官方站點(diǎn)上看兩個(gè)Example頂多一小時(shí)絕對能搞定的。但結(jié)果讓我非常的惱火,官方的Example簡單的它偏不提供,弄些什么Ajax的,一大堆實(shí)現(xiàn)輔助效果的代碼,你要找的核心的那三四行打死也找不到,好像就怕你一下子把它的Example看明白了。歷來討厭這種軟件。于是卸載、刪除......等全部弄完,一天過去了。

還好,后來找到了Web Chart。代碼超簡潔,效果也還不錯(cuò),寫些簡單的asp.net報(bào)表控件示例供大家參考:

ASP.NET報(bào)表控件一、折線圖

折線圖

  1. //引用命名空間  
  2. using WebChart;  
  3.  
  4. //定義一個(gè)顏色數(shù)組,供循環(huán)時(shí)為不同的記錄填充不同的顏色  
  5. PRivate string[] myColor = new string[]  
  6. {  
  7.     "Tomato",//西紅柿  
  8.     "Black",  
  9.     "Gold",  
  10.     "Blue",  
  11.     "Green",  
  12.     "Orange",  
  13.     "Pink",//粉紅  
  14.     "Violet",//紫羅蘭  
  15.     "Orchid",//淡紫色  
  16.     "Lime",//亮綠  
  17.     "Tan",//茶色  
  18.     "Red",  
  19.     "Navy"http://橘紅  
  20. };  
  21.  
  22. //用靜態(tài)方式示例了畫出一條兩個(gè)點(diǎn)的最簡單折線.實(shí)際項(xiàng)目據(jù)此做循環(huán)而以.  
  23. private void doIt()  
  24. {  
  25.     //創(chuàng)建折線對象  
  26.     LineChart myChart = new LineChart();  
  27.     //為折線填充顏色  
  28.     myChart.Line.Color = Color.FromName(myColor[0]);  
  29.     myChart.Fill.Color = Color.FromName(myColor[0]);  
  30.     myChart.LineMarker = new DiamondLineMarker(8, Color.FromName(myColor[0]), Color.FromName(myColor[0]));  
  31.     //圖例說明  
  32.     myChart.Legend = "折線一";  
  33.     //添加第一個(gè)點(diǎn),參數(shù)一為x座標(biāo)上的名稱,參數(shù)二為y座標(biāo)上的值  
  34.     myChart.Data.Add(new ChartPoint("一", float.Parse("100")));  
  35.     //添加第二個(gè)點(diǎn)  
  36.     myChart.Data.Add(new ChartPoint("二", float.Parse("200")));  
  37.     //chart為控件ID  
  38.     this.chart.Charts.Add(myChart);  
  39.     this.chart.RedrawChart();  

ASP.NET報(bào)表控件二、柱狀圖

柱狀圖

  1. //顏色數(shù)組  
  2. private string[] myColor = new string[]  
  3. {  
  4.     "Fuchsia",  
  5.     "Black",  
  6.     "Gold",  
  7.     "Blue",  
  8.     "HotPink",  
  9.     "Orange",  
  10.     "Peru",  
  11.     "DodgerBlue",  
  12.     "Lime",  
  13.     "Tan",  
  14.     "Red",  
  15.     "GreenYellow",  
  16.     "DarkGreen",  
  17.     "DimGray",  
  18.     "Orchid"  
  19. };  
  20.  
  21. //調(diào)用該方法生成柱狀圖  
  22. private void bindchart()  
  23. {  
  24.     //獲取一個(gè)DataTable,具體函數(shù)略...  
  25.     DataTable dt = this.getdt();  
  26.     if (dt != null)  
  27.     {  
  28.         if (dt.Rows.Count > 0)  
  29.         {  
  30.             //遍歷DataTable為每條記錄生成一個(gè)柱狀  
  31.             for (int i = 0; i < dt.Rows.Count; i++)  
  32.             {  
  33.                 //創(chuàng)建對象  
  34.                 ColumnChart mychart = new ColumnChart();  
  35.                 //設(shè)置柱子寬度  
  36.                 mychart.MaxColumnWidth = 48;  
  37.                 //顏色  
  38.                 mychart.Fill.Color = Color.FromName(this.myColor[i]);  
  39.                 //在柱子上顯示數(shù)量  
  40.                 mychart.DataLabels.Visible = true;  
  41.                 //數(shù)量的字體  
  42.                 mychart.DataLabels.Font = new Font("Verdana", 14);  
  43.                 //添加  
  44.                 mychart.Data.Add(new ChartPoint("", float.Parse(dt.Rows[i]["num"].ToString())));  
  45.                 //備注  
  46.                 mychart.Legend = dt.Rows[i]["name"].ToString();  
  47.                 this.chart.Charts.Add(mychart);  
  48.             }  
  49.             //輔助設(shè)置  
  50.             //背景色  
  51.             chart.Background.Color = Color.FromArgb(165, 0, 16);  
  52.             chart.YAxisFont.ForeColor = Color.FromArgb(165, 0, 16);  
  53.             chart.XAxisFont.ForeColor = Color.FromArgb(165, 0, 16);  
  54.             //內(nèi)部線條  
  55.             chart.Border.Color = Color.FromArgb(200, 200, 200);  
  56.             //邊框樣式  
  57.             chart.BorderStyle = BorderStyle.None;  
  58.             //y最大值  
  59.             double max = double.Parse(dt.Compute("MAX(num)","").ToString());  
  60.             //遞增值  
  61.             int intv = 2;  
  62.  
  63.             //數(shù)量小于16的情況  
  64.             if (max < 16)  
  65.             {  
  66.                 max = 16;  
  67.             }  
  68.             //大于16的情況  
  69.             else  
  70.             {  
  71.                 intintv = int.Parse(Math.Ceiling(max/8).ToString());  
  72.                 max += intv;  
  73.             }  
  74.  
  75.             //設(shè)置Y軸終點(diǎn)值  
  76.             chart.YCustomEnd = int.Parse(max.ToString());  
  77.             //y遞增值  
  78.             chart.YValuesInterval = intv;  
  79.  
  80.             //生成  
  81.             this.chart.RedrawChart();  
  82.         }  
  83.     }  

Web Chart為免費(fèi)ASP.NET報(bào)表控件,需要的朋友可去官方地址下載:http://www.carlosag.net/Tools/WebChart/Default.aspx,上面還有很多效果和代碼示例。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 赤城县| 怀来县| 丹棱县| 吴堡县| 九台市| 汤阴县| 双城市| 涟源市| 巴马| 孟州市| 蓬莱市| 芦溪县| 保康县| 嘉兴市| 南安市| 黔南| 安宁市| 万安县| 康马县| 五大连池市| 讷河市| 奉节县| 灵石县| 诏安县| 永善县| 宁蒗| 乾安县| 景谷| 云林县| 香河县| 盐山县| 静乐县| 化德县| 博野县| 洛阳市| 高邮市| 长乐市| 衡阳市| 凤冈县| 大兴区| 肇源县|