亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

淺談ASP.NET報表控件

2019-11-14 16:33:32
字體:
來源:轉載
供稿:網友

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

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

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

ASP.NET報表控件一、折線圖

折線圖

  1. //引用命名空間  
  2. using WebChart;  
  3.  
  4. //定義一個顏色數組,供循環時為不同的記錄填充不同的顏色  
  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. //用靜態方式示例了畫出一條兩個點的最簡單折線.實際項目據此做循環而以.  
  23. private void doIt()  
  24. {  
  25.     //創建折線對象  
  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.     //添加第一個點,參數一為x座標上的名稱,參數二為y座標上的值  
  34.     myChart.Data.Add(new ChartPoint("一", float.Parse("100")));  
  35.     //添加第二個點  
  36.     myChart.Data.Add(new ChartPoint("二", float.Parse("200")));  
  37.     //chart為控件ID  
  38.     this.chart.Charts.Add(myChart);  
  39.     this.chart.RedrawChart();  

ASP.NET報表控件二、柱狀圖

柱狀圖

  1. //顏色數組  
  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. //調用該方法生成柱狀圖  
  22. private void bindchart()  
  23. {  
  24.     //獲取一個DataTable,具體函數略...  
  25.     DataTable dt = this.getdt();  
  26.     if (dt != null)  
  27.     {  
  28.         if (dt.Rows.Count > 0)  
  29.         {  
  30.             //遍歷DataTable為每條記錄生成一個柱狀  
  31.             for (int i = 0; i < dt.Rows.Count; i++)  
  32.             {  
  33.                 //創建對象  
  34.                 ColumnChart mychart = new ColumnChart();  
  35.                 //設置柱子寬度  
  36.                 mychart.MaxColumnWidth = 48;  
  37.                 //顏色  
  38.                 mychart.Fill.Color = Color.FromName(this.myColor[i]);  
  39.                 //在柱子上顯示數量  
  40.                 mychart.DataLabels.Visible = true;  
  41.                 //數量的字體  
  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.             //輔助設置  
  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.             //內部線條  
  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.             //數量小于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.             //設置Y軸終點值  
  76.             chart.YCustomEnd = int.Parse(max.ToString());  
  77.             //y遞增值  
  78.             chart.YValuesInterval = intv;  
  79.  
  80.             //生成  
  81.             this.chart.RedrawChart();  
  82.         }  
  83.     }  

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


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲风情亚aⅴ在线发布| 亚洲影视中文字幕| 91久久夜色精品国产网站| 国产精品一区电影| 川上优av一区二区线观看| 九九热99久久久国产盗摄| 欧美疯狂做受xxxx高潮| 精品国产91久久久久久老师| 777777777亚洲妇女| 欧美大片在线影院| 成人黄色在线播放| 久久夜色精品国产亚洲aⅴ| 国产成人亚洲综合91| 一区二区三区亚洲| 亚洲自拍偷拍福利| 中文字幕国产精品久久| 亚洲欧美日韩高清| 国产精品美女久久| 国产中文欧美精品| 欧美视频在线观看 亚洲欧| 91免费视频国产| 精品国产乱码久久久久久婷婷| 亚洲欧美中文另类| 欧美在线性爱视频| 亚洲精品电影在线| 久久久欧美精品| 亚洲aaa激情| 欧美日本亚洲视频| 日韩精品免费看| 亚洲在线免费观看| 欧美成年人网站| 欧美日韩免费在线观看| 国产精品精品一区二区三区午夜版| 日韩美女视频免费看| 亚洲国产美女精品久久久久∴| 久久九九免费视频| 久久久久久久久久久久av| 91理论片午午论夜理片久久| 91精品在线一区| 亚洲男人的天堂在线播放| 大桥未久av一区二区三区| 亚洲a级在线观看| 国产亚洲成精品久久| 欧美另类xxx| 亚洲系列中文字幕| 欧美在线观看一区二区三区| 色综合久久中文字幕综合网小说| 亚洲精品国产suv| 精品国偷自产在线| 668精品在线视频| 97视频网站入口| 亚洲的天堂在线中文字幕| 国产日本欧美一区二区三区| 欧美精品在线免费观看| 亚洲欧美日韩在线高清直播| 国产精品wwwwww| 日韩专区中文字幕| 久久亚洲国产成人| 国产91热爆ts人妖在线| 国产精品一区专区欧美日韩| 亚洲国产精品久久91精品| 国产一区视频在线| 孩xxxx性bbbb欧美| 欧美成年人在线观看| 亚洲欧洲自拍偷拍| 国产精品黄色影片导航在线观看| 亚洲精品中文字幕有码专区| 欧美人在线观看| 精品亚洲aⅴ在线观看| 91人人爽人人爽人人精88v| 欧美激情乱人伦一区| 亚洲在线视频福利| 久久久精品在线| 国产91精品久| 国产成人在线亚洲欧美| 欧美激情手机在线视频| 国产免费成人av| 国产精品成久久久久三级| 日本高清不卡在线| 97在线看免费观看视频在线观看| 欧美日韩一二三四五区| 亚洲美女性生活视频| 欧美猛交ⅹxxx乱大交视频| 久久精品视频免费播放| 日韩电影大片中文字幕| 国产精品免费看久久久香蕉| 欧美日韩成人在线观看| 欧美黑人狂野猛交老妇| 日韩免费在线观看视频| 欧美一级在线播放| 91久热免费在线视频| 国产91精品久久久久| 欧美精品在线免费观看| 91久久精品国产91久久性色| 91成人免费观看网站| 国产成人jvid在线播放| 国产午夜精品全部视频在线播放| 国产成人激情视频| 久久久久久久一| 欧美精品18videos性欧| 亚洲精品91美女久久久久久久| 国产美女91呻吟求| 国产成人97精品免费看片| 亚洲女人天堂成人av在线| 亚洲欧洲在线免费| 国产精品偷伦视频免费观看国产| 国产激情久久久| 欧美日韩精品二区| 午夜欧美不卡精品aaaaa| 欧美国产日韩一区| 日韩视频在线免费| 福利精品视频在线| 日韩在线观看免费高清| 狠狠干狠狠久久| 91久久夜色精品国产网站| 亚洲伊人久久大香线蕉av| 日韩成人av在线播放| 国产精品久久久久久亚洲调教| 欧美成人午夜激情在线| 日韩av最新在线| 国产精品99久久久久久久久| 亚洲成人国产精品| 亚洲日本中文字幕免费在线不卡| 亚洲xxxx做受欧美| 亚洲一区久久久| 亚洲r级在线观看| 欧美成人激情图片网| 色综合91久久精品中文字幕| 亚洲第一精品夜夜躁人人爽| 欧美日本亚洲视频| 久久躁日日躁aaaaxxxx| 欧美精品在线观看| 中文字幕日韩av电影| 亚洲欧美日韩一区二区在线| 欧美激情第1页| 国产精品一区二区久久精品| 日韩视频在线免费| 伊人精品在线观看| 欧美成人一区在线| 国内精品美女av在线播放| 欧美色图在线视频| 亚洲女人被黑人巨大进入| 欧美国产日韩一区二区三区| 久久国产精品久久久| 国产欧美一区二区三区久久人妖| 成人性生交xxxxx网站| 欧美日韩国产一区在线| 欧美成人免费视频| 国色天香2019中文字幕在线观看| 日本道色综合久久影院| 日韩在线视频一区| 亚洲精品视频播放| 韩曰欧美视频免费观看| 亚洲国产成人精品久久久国产成人一区| 欧美与欧洲交xxxx免费观看| 国产精品电影在线观看| 国产精品av电影| 亚洲a一级视频| 国模精品视频一区二区三区| 日韩福利伦理影院免费| 不卡av在线网站| 欧美激情va永久在线播放| 色悠悠久久久久| 欧美成人午夜影院|