问题描述
VS2012做水晶报表,调试的时候水晶报表工具栏和数据都能显示,就是下面的柱状图不能显示,数据库连接都没问题。
解决方案
解决方案二:
给柱状图绑定数据源了吗
解决方案三:
绑定了,列和统计个数都有
解决方案四:
数据源列名称和水晶报表绑定的字段名是否一致(包括大小写)?
解决方案五:
:柱形图分析汇总数据显示publicpartialclassFrm_Main:Form{SqlConnectioncon;SqlCommandcmd;publicFrm_Main(){InitializeComponent();}privatevoidForm1_Load(objectsender,EventArgse){ShowPic();}privatevoidConn(){con=newSqlConnection("server=WRET-MOSY688YVW\MRGLL;uid=sa;pwd=;database=db_TomeOne");con.Open();}privatevoidShowPic(){Conn();//打开数据库连接using(cmd=newSqlCommand("SELECTTOP3*FROMtb_Rectangleorderbyt_Numdesc",con));//实例化SqlCommand对象{SqlDataReaderdr=cmd.ExecuteReader();//创建SqlDataReader对象BitmapbitM=newBitmap(this.panel1.Width,this.panel1.Height);//实例化一个新画布Graphicsg=Graphics.FromImage(bitM);//创建Graphics对象g.Clear(Color.White);//设置画布背景for(inti=0;i<5;i++){g.DrawLine(newPen(newSolidBrush(Color.Red),2.0f),50,this.panel1.Height-20-i*20,this.panel1.Width-40,this.panel1.Height-20-i*20);//绘制水平直线g.DrawString(Convert.ToString(i*100),newFont("TimesNewRoman",10,FontStyle.Regular),newSolidBrush(Color.Black),20,this.panel1.Height-27-i*20);//绘制文字}for(intj=0;j<4;j++){//绘制垂直直线g.DrawLine(newPen(newSolidBrush(Color.Red),1.0f),50+40*j,this.panel1.Height-20,50+40*j,20);if(dr.Read()){intx,y,w,h;//声明变量存储坐标和宽高g.DrawString(dr[0].ToString(),newFont("宋体",8,FontStyle.Regular),newSolidBrush(Color.Black),76+40*j,this.panel1.Height-16);//绘制说明文字x=78+40*j;//X轴y=this.panel1.Height-20-Convert.ToInt32((Convert.ToDouble(Convert.ToDouble(dr[1].ToString())*20/100)));//Y轴w=24;//宽h=Convert.ToInt32(Convert.ToDouble(dr[1].ToString())*20/100);//高g.FillRectangle(newSolidBrush(Color.FromArgb(56,129,78)),x,y,w,h);//绘制柱形图}}//codego.net/tags/1/1/this.panel1.BackgroundImage=bitM;//将画布设为panel1控件的背景图}}}