袁氏报表用代码画一个饼图

先要建一个ReportService.aspx 代码如下:
None.gif XDesigner.Report.ReportHtmlBuilder hb  =   this .Session[ " htmlbuilder " as  XDesigner.Report.ReportHtmlBuilder;
None.gif        
if  (hb  ==   null )
None.gif            
return ;
None.gif
None.gif        
if  ( this .Request.QueryString[ " imageindex " !=   null )
ExpandedBlockStart.gifContractedBlock.gif        
dot.gif {
InBlock.gif            System.Drawing.Imaging.ImageFormat f 
= System.Drawing.Imaging.ImageFormat.Png;
InBlock.gif
InBlock.gif            
string imagType = this.Request.QueryString["imagetype"];
InBlock.gif            
if (imagType == "jpg")
InBlock.gif                f 
= ImageFormat.Jpeg;
InBlock.gif
InBlock.gif            hb.SaveReportImage(
InBlock.gif                Convert.ToInt32(
this.Request.QueryString["imageindex"]),
InBlock.gif                
this.Response.OutputStream,
InBlock.gif                f);
InBlock.gif            
return;
ExpandedBlockEnd.gif        }

None.gif
None.gif        
if  ( this .Request.QueryString[ " out " ==   " doc " )
ExpandedBlockStart.gifContractedBlock.gif        
dot.gif {
InBlock.gif            
// Output MS Word 2000 document
InBlock.gif
            hb.SaveWordDocument(this.Response.OutputStream);
InBlock.gif            
this.Response.ContentType = "application/msword";
InBlock.gif            
//this.Response.AppendHeader("Content-Disposition","attachment;filename=" + System.Web.HttpUtility.UrlEncode( hb.Title ) + ".doc");
ExpandedBlockEnd.gif
        }

None.gif        
else   if  ( this .Request.QueryString[ " out " ==   " xls " )
ExpandedBlockStart.gifContractedBlock.gif        
dot.gif {
InBlock.gif            
// Output MS Excel2000 document
InBlock.gif
            hb.SaveExcelDocument(this.Response.OutputStream);
InBlock.gif            
this.Response.ContentType = "application/vnd.ms-excel";
InBlock.gif            
//this.Response.AppendHeader("Content-Disposition","attachment;filename=" + System.Web.HttpUtility.UrlEncode( hb.Title ) + ".xls");
ExpandedBlockEnd.gif
        }

None.gif        
else   if  ( this .Request.QueryString[ " out " ==   " pdf " )
ExpandedBlockStart.gifContractedBlock.gif        
dot.gif {
InBlock.gif            hb.SavePDFDocument(
this.Response.OutputStream);
InBlock.gif            
this.Response.ContentType = "application/pdf";
ExpandedBlockEnd.gif        }

None.gif        
else
None.gif            hb.Save(
this .Response.Output);

再建一个页面画大饼咯:
None.gif // 先增一个报表
None.gif
        DesignReportDocument doc  =   new  DesignReportDocument();
None.gif        doc.Title 
=   " 动态报表 " ;
None.gif
None.gif        
// Lable
None.gif
        DesignReportLabel lbl  =  doc.CreateLabelElement();
None.gif        lbl.Text 
=   " 动态报表演示 " ;
None.gif        lbl.TextColor 
=  System.Drawing.Color.Yellow;
None.gif        lbl.Font 
=   new  Font( " 宋体 " 20 , System.Drawing.FontStyle.Bold  |  System.Drawing.FontStyle.Italic);
None.gif        lbl.Align 
=  StringAlignment.Center;
None.gif        lbl.PrintDockStyle 
=  PrintDockStyle.Top;
None.gif        lbl.Height 
=   120 ;
None.gif        lbl.Border.BackColor 
=  Color.SkyBlue;
None.gif        doc.Add(lbl);
None.gif
None.gif        
// 一个大饼
None.gif
        DesignReportPie pie  =  doc.CreatePieElement();
None.gif        pie.Bounds 
=   new  Rectangle( 169 775 1363 954 );
None.gif        pie.Thickness 
=   60 ;
None.gif        pie.BorderWidth 
=   1 ;
None.gif        pie.LeftBorder 
=   false ;
None.gif        pie.TopBorder 
=   false ;
None.gif        pie.RightBorder 
=   false ;
None.gif        pie.BottomBorder 
=   false ;
None.gif        doc.Add(pie);
None.gif
None.gif        
// 增加列
None.gif
         for  ( int  i  =   1 ; i  <   5 ; i ++ )
ExpandedBlockStart.gifContractedBlock.gif        
dot.gif {
InBlock.gif            DesignReportPieItem pieItem 
= doc.CreatePieItemElement();
InBlock.gif            pieItem.ID 
= "pieItem" + i;
InBlock.gif            pieItem.Value 
= i.ToString();
InBlock.gif            pieItem.Text 
= i.ToString() + "_" + i.ToString();
InBlock.gif            pieItem.FillColor 
= System.Drawing.Color.FromArgb((i * 1000% 255, (i * 100% 255, (i * 10% 255);
InBlock.gif            
//pieItem.BackColor = System.Drawing.Color.FromArgb(255, 255, (i * 100) % 255);
InBlock.gif
            pie.AppendChild(pieItem);
ExpandedBlockEnd.gif        }

None.gif
None.gif        DesignReportLabelList reportpietext1 
=  doc.CreateLabelListElement();
None.gif        doc.AppendChild(reportpietext1);
None.gif        reportpietext1.ID 
=   " reportpietext1 " ;
None.gif        reportpietext1.Bounds 
=   new  System.Drawing.Rectangle( 215 24 1175 731 );
None.gif        reportpietext1.BorderWidth 
=   1 ;
None.gif        reportpietext1.ItemSpacing 
=   30 ;
None.gif        reportpietext1.ItemHeight 
=   50 ;
None.gif        reportpietext1.Font 
=   new  System.Drawing.Font( " 宋体 " , 9F, System.Drawing.FontStyle.Bold);
None.gif        reportpietext1.BarSize 
=   60 ;
None.gif
None.gif        XDesigner.Report.ReportBuilder rb 
=   new  ReportBuilder();
None.gif        rb.LoadReport(doc);
None.gif
None.gif        XDesigner.Report.ReportHtmlBuilder hb 
=  rb.CreateHtmlBuilder();
None.gif        hb.ImgSrcFormatString 
=   " reportservice.aspx?imageindex={0} " ;
None.gif        hb.Refresh();
None.gif        hb.ContentEncoding 
=   this .Response.ContentEncoding;
None.gif
None.gif        
this .Session[ " htmlbuilder " =  hb;
None.gif        hb.Save(
this .Response.Output);


转载于:https://www.cnblogs.com/tonyboy/archive/2007/06/13/782407.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值