欢迎光临
我们一直在努力

柱形图 和 折线图 饼形图控件-.NET教程,报表/图形/Office

建站超值云服务器,限时71元/月

using system;
using system.collections;
using system.componentmodel;
using system.drawing;
using system.data;
using system.windows.forms;
using system.xml ;

namespace chartcontrol
{
 /// <summary>
 /// chartcontrol 1.0 的摘要说明。此控件是画图的,根据xml文档的数据生成图表。
 /// 目前能够画2维图和3维图 柱形图 和 折线图 饼形图。韩永矗5apr2005制作。
 /// 柱形图请将xml文件中的“add key=”diagramtype””修改为histogram
 /// 折线图请将xml文件中的“add key=”diagramtype””修改为flexdiagram
 /// 饼形图请将xml文件中的“add key=”diagramtype””修改为cakydiagram
 /// xml文件不能修改名字,需要和你的程序执行文件在同一个目录。
 /// </summary>
 public class chartcontrol : system.windows.forms.usercontrol
 {
  private system.windows.forms.label label1;
  private system.windows.forms.label label2;
  private system.windows.forms.label label3;
  /// <summary>
  /// 必需的设计器变量。
  /// </summary>
  private system.componentmodel.container components = null;

  public chartcontrol()
  {
   // 该调用是 windows.forms 窗体设计器所必需的。
   initializecomponent();

   // todo: 在 initcomponent 调用后添加任何初始化

  }

  /// <summary>
  /// 清理所有正在使用的资源。
  /// </summary>
  protected override void dispose( bool disposing )
  {
   if( disposing )
   {
    if( components != null )
     components.dispose();
   }
   base.dispose( disposing );
  }

  #region 组件设计器生成的代码
  /// <summary>
  /// 设计器支持所需的方法 – 不要使用代码编辑器
  /// 修改此方法的内容。
  /// </summary>
  private void initializecomponent()
  {
   this.label1 = new system.windows.forms.label();
   this.label2 = new system.windows.forms.label();
   this.label3 = new system.windows.forms.label();
   this.suspendlayout();
   //
   // label1
   //
   this.label1.location = new system.drawing.point(104, 16);
   this.label1.name = “label1”;
   this.label1.size = new system.drawing.size(160, 24);
   this.label1.tabindex = 0;
   this.label1.text = “label1”;
   //
   // label2
   //
   this.label2.location = new system.drawing.point(8, 56);
   this.label2.name = “label2”;
   this.label2.tabindex = 1;
   this.label2.text = “label2”;
   //
   // label3
   //
   this.label3.location = new system.drawing.point(288, 320);
   this.label3.name = “label3”;
   this.label3.tabindex = 2;
   this.label3.text = “label3”;
   //
   // chartcontrol
   //
   this.backcolor = system.drawing.color.white;
   this.controls.add(this.label3);
   this.controls.add(this.label2);
   this.controls.add(this.label1);
   this.name = “chartcontrol”;
   this.size = new system.drawing.size(448, 360);
   this.load += new system.eventhandler(this.chartcontrol_load);
   this.resumelayout(false);

  }
  #endregion

  #region 读写xml文件的几个小函数,2005 4 2 by hyc

  public void setxmlfilevalue(string xmlpath,string appkey,string appvalue)//写xmlpath是文件路径+文件名,appkey是 key name,appvalue是value
  {
   xmldocument xdoc = new xmldocument();
   xdoc.load(xmlpath);
   xmlnode xnode;
   xmlelement xelem1;
   xmlelement xelem2;

   xnode =  xdoc.selectsinglenode(“//appsettings”);

   xelem1 = (xmlelement)xnode.selectsinglenode(“//add[@key=” + appkey + “]”);
   if ( xelem1 != null )
   {
    xelem1.setattribute(“value”,appvalue);
   }
   else
   {
    xelem2 = xdoc.createelement(“add”);
    xelem2.setattribute(“key”,appkey);
    xelem2.setattribute(“value”,appvalue);
    xnode.appendchild(xelem2);
   }
   xdoc.save(xmlpath);
  }

  public void getxmlfilevalue(string xmlpath,string appkey,ref string appvalue)//读xmlpath是文件路径+文件名,appkey是 key name,appvalue是value
  {
   xmldocument xdoc = new xmldocument();
   xdoc.load(xmlpath);
   xmlnode xnode;
   xmlelement xelem1;

   xnode =  xdoc.selectsinglenode(“//appsettings”);

   xelem1 = (xmlelement)xnode.selectsinglenode(“//add[@key=” + appkey + “]”);
   if ( xelem1 != null )
   {
    appvalue=xelem1.getattribute (“value”);
   }
   else
   {
//    messagebox.show (“there is not any information!”);
   }

  }

  #endregion

  #region 变量声明,2005 4 4 by hyc

  public int formheight;
  public int formwidth;
  public int num=1;
  public int max=1;
  public int min=1;
  public int jnum=1;//维数
  public int polebold;
  public int heightxs=100;//高度系数
  public int[] startangl=new int [100];//开始角度
  public int[] sweepangl=new int [100]; //跨越弧度
  public int allsweep;
  public int kuandu;
  public int[,] x=new int [100,100];
  public int [,] y=new int[100,100];
  public int[,] yy=new int [100,100];
  public string[] typename=new string [100];
  public string[,] typevalue=new string [100,100];
  public string appvalue; 
  public string pathfilename=system.windows .forms .application.startuppath +”\\xmlchart.xml”;
  system.windows .forms .label [] typenamelabel;
  system.windows .forms .label [,] typevaluelabel;

  #endregion

  #region 自定义函数,2005 4 4 by hyc

  public void allbegain()//all 初始化
  {
   formheight=this.height ;
   formwidth=this.width ;
   getxmlfilevalue(pathfilename,”diagramname”,ref appvalue);
   label1.text =appvalue+”(此图表控件是测试版)”;
   getxmlfilevalue(pathfilename,”yname”,ref appvalue);
   label2.text =appvalue;
   getxmlfilevalue(pathfilename,”xname”,ref appvalue);
   label3.text =appvalue;

   label1.autosize =true;
   label1.top =5;
   label1.left =(formwidth-label1.width )/2;
   label2.autosize =true ;
   label3.autosize=true;
   label2.top =15;
   label2.left =5;
   label3.top=formheight-10;
   label3.left=formwidth-label3.width-5;

   getxmlfilevalue(pathfilename,”num”,ref appvalue);
   num=int32.parse (appvalue);

   getxmlfilevalue(pathfilename,”jnum”,ref appvalue);
   jnum=int32.parse (appvalue);

  }

  
  public void histogrambegain()//histogram 初始化
  {
   for(int i=1;i<=num;i++)
   {
    getxmlfilevalue(pathfilename,”id”+i.tostring (),ref typename[i]);
    for(int j=1;j<=jnum;j++)
    {
     getxmlfilevalue(pathfilename,”id”+j.tostring()+”num”+i.tostring (),ref typevalue[j,i]);
    }
   }

   polebold=formwidth*2/(3*num*jnum);
   
   
   max=int32.parse (typevalue[1,1]);
   min=int32.parse (typevalue[1,1]);
   for(int i=1;i<=num;i++)
   {
    for(int j=1;j<=jnum;j++)
    {
     if(int32.parse (typevalue[j,i])>max)
     {
      max=int32.parse (typevalue[j,i]);
     }
     if(int32.parse (typevalue[j,i])<min)
     {
      min=int32.parse (typevalue[j,i]);
     }
    }
   }

   for(int i=1;i<100;i++)
   {
    if(max>(formheight-50))
    {
     heightxs=heightxs/2;
     max=max/2;
    }
    if(max<(formheight-50)/2)
    {
     heightxs=heightxs*2;
     max=max*2;
    }
    if(max<(formheight-50) && max>(formheight-50)/2)
    {
     break;
    }
   }

   for(int i=1;i<=num;i++)
   {
    for(int j=1;j<=jnum;j++)
    {
     x[j,i]=(label3.left -(label2.left +label2.width ))/num*i-(label2.left +label2.width )+(polebold+1)*(j-1)-label3.width  ;//????
     y[j,i]=label3.top-5-(int32.parse (typevalue[j,i])*heightxs/100);
     yy[j,i]=int32.parse (typevalue[j,i]);
     yy[j,i]=yy[j,i]*heightxs/100;
    }
   }

   typenamelabel = new system.windows .forms.label[100];

   for(int i=1;i<=num;i++)
   {
    typenamelabel[i]=new label ();
    typenamelabel[i].top =label3.top ;
    typenamelabel[i].text =typename[i];
    typenamelabel[i].autosize  =true;
    typenamelabel[i].left =x[1,i]+polebold*jnum/2;
    this.controls .add (typenamelabel[i]);
   }

   typevaluelabel = new system.windows .forms.label[100,100];
 
   for(int i=1;i<=num;i++)
   {
    for(int j=1;j<=jnum;j++)
    {
     typevaluelabel[j,i]=new label ();
     typevaluelabel[j,i].top =y[j,i]-20 ;
     typevaluelabel[j,i].text =typevalue[j,i];
     typevaluelabel[j,i].autosize  =true;
     typevaluelabel[j,i].left =x[j,i];
     this.controls .add (typevaluelabel[j,i]);
    }
   }
  }

  
  public void flexdiagrambegain()//flex diagram 初始化
  {
   for(int i=1;i<=num;i++)
   {
    getxmlfilevalue(pathfilename,”id”+i.tostring (),ref typename[i]);
    for(int j=1;j<=jnum;j++)
    {
     getxmlfilevalue(pathfilename,”id”+j.tostring()+”num”+i.tostring (),ref typevalue[j,i]);
    }
   }
   
   typenamelabel = new system.windows .forms.label[100];

   for(int i=1;i<=num;i++)
   {
    typenamelabel[i]=new label ();
    typenamelabel[i].top =label3.top ;
    typenamelabel[i].text =typename[i];
    typenamelabel[i].autosize  =true;
    typenamelabel[i].left =(label3.left -(label2.left +label2.width ))/num*i-(label2.left +label2.width )-typenamelabel[i].width /2;
    this.controls .add (typenamelabel[i]);
   }
   
   max=int32.parse (typevalue[1,1]);
   min=int32.parse (typevalue[1,1]);
   for(int i=1;i<=num;i++)
   {
    for(int j=1;j<=jnum;j++)
    {
     if(int32.parse (typevalue[j,i])>max)
     {
      max=int32.parse (typevalue[j,i]);
     }
     if(int32.parse (typevalue[j,i])<min)
     {
      min=int32.parse (typevalue[j,i]);
     }
    }
   }

   for(int i=1;i<100;i++)
   {
    if(max>(formheight-50))
    {
     heightxs=heightxs/2;
     max=max/2;
    }
    if(max<(formheight-50)/2)
    {
     heightxs=heightxs*2;
     max=max*2;
    }
    if(max<(formheight-50) && max>(formheight-50)/2)
    {
     break;
    }
   }

   for(int i=1;i<=num;i++)
   {
    for(int j=1;j<=jnum;j++)
    {
     x[j,i]=(label3.left -(label2.left +label2.width ))/num*i-(label2.left +label2.width );
     y[j,i]=label3.top-5-(int32.parse (typevalue[j,i])*heightxs/100);
     yy[j,i]=int32.parse (typevalue[j,i]);
     yy[j,i]=yy[j,i]*heightxs/100;
    }
   }
   
   typevaluelabel = new system.windows .forms.label[100,100];

   for(int i=1;i<=num;i++)
   {
    for(int j=1;j<=jnum;j++)
    {
     typevaluelabel[j,i]=new label ();
     typevaluelabel[j,i].top =y[j,i]-20 ;
     typevaluelabel[j,i].text =typevalue[j,i];
     typevaluelabel[j,i].autosize  =true;
     typevaluelabel[j,i].left =(label3.left -(label2.left +label2.width ))/num*i-(label2.left +label2.width )-typevaluelabel[j,i].width /2;
     this.controls .add (typevaluelabel[j,i]);
    }
   }
  }

  public void cakydiagrambegain()//饼形图初始化
  {
   for(int i=1;i<=num;i++)
   {
    getxmlfilevalue(pathfilename,”id”+i.tostring (),ref typename[i]);
    getxmlfilevalue(pathfilename,”id1num”+i.tostring (),ref typevalue[1,i]);
   }

   for(int i=1;i<=num;i++)
   {
    getxmlfilevalue(pathfilename,”id1num”+i.tostring (),ref appvalue);
    sweepangl[i]=int32.parse (appvalue);
   }

   allsweep=0;
   for(int i=1;i<=num;i++)
   {
    allsweep=allsweep+sweepangl[i];
   }

   for(int i=1;i<=num;i++)
   {
    sweepangl[i]=(sweepangl[i]*360)/allsweep;
   }

   //去掉白边
   int tempsw;
   for(int j=1;j<360;j++)
   {
    tempsw=0;
    for(int i=1;i<=num;i++)
    {
     tempsw=tempsw+sweepangl[i];
    }
    if(tempsw<360)
    {
     for(int k=1;k<=360-tempsw;k++)
     {
      if(k<num)
      {
       sweepangl[k]++;
      }
      else
      {
       break;
      }
     }
    }
    if(tempsw>=360)
    {
     break;
    }
   }

   startangl[1]=0;
   
   int tempallsweep;
   for(int i=2;i<=num;i++)
   {
    tempallsweep=0;
    for(int j=1;j<=i-1;j++)
    {
     tempallsweep=tempallsweep+sweepangl[j];
    }
    startangl[i]=tempallsweep;
   }

   if(formwidth>=formheight)
   {
    kuandu=formheight*2/3;
   }
   else
   {
    kuandu=formwidth*2/3;
   }

   double angle;

   typenamelabel = new system.windows .forms.label[100];
   
   for(int i=1;i<=num;i++)
   {
    angle=(360-startangl[i]+90-sweepangl[i]/2)*3.141592653579/180;

    typenamelabel[i]=new label ();
    typenamelabel[i].top =(int)((kuandu+60)/2* math.cos (angle))+(formheight/6+kuandu/2);
    typenamelabel[i].text =typename[i];
    typenamelabel[i].autosize  =true;
    typenamelabel[i].left =(int)((kuandu+60)/2* math.sin (angle))+(formwidth/6+kuandu/2);
    this.controls .add (typenamelabel[i]);
   }

   typevaluelabel = new system.windows .forms.label[100,100];
 
   string tempstr1;

   for(int i=1;i<=num;i++)
   {
    tempstr1=(int32.parse (typevalue[1,i])*1.0/allsweep*100.0).tostring()+”    “;
    typevaluelabel[1,i]=new label ();
    typevaluelabel[1,i].top =typenamelabel[i].top  ;
    typevaluelabel[1,i].text =tempstr1.substring(0,5)+”%”;
    typevaluelabel[1,i].autosize  =true;
    typevaluelabel[1,i].left =typenamelabel[i].left+typenamelabel[i].width +2;
    this.controls .add (typevaluelabel[1,i]);
   }

  }

  #endregion

  private void chartcontrol_load(object sender, system.eventargs e)
  {
   allbegain();
  }

  #region draw diagram函数,2005 4 4 by hyc

  protected override void onpaint(painteventargs paintevent)
  {
   graphics g = paintevent.graphics;
   solidbrush brush=new solidbrush (color.blue );
   pen pen=new pen (color.black);
   pen pen2=new pen (color.darkgray );

   solidbrush[] bb;
   bb=new solidbrush [100];
   bb[1]=new solidbrush (color.darkred);
   bb[2]=new solidbrush (color.darkslateblue);
   bb[3]=new solidbrush (color.darkgray);
   bb[4]=new solidbrush (color.yellowgreen);
   bb[5]=new solidbrush (color.darksalmon);
   bb[6]=new solidbrush (color.darkorange);
   bb[7]=new solidbrush (color.lightyellow);
   bb[8]=new solidbrush (color.slateblue);
   bb[9]=new solidbrush (color.black);
   bb[10]=new solidbrush (color.yellowgreen);
   bb[11]=new solidbrush (color.darkseagreen);
   bb[12]=new solidbrush (color.darkslategray);
   bb[13]=new solidbrush (color.darkturquoise);
   bb[14]=new solidbrush (color.darkviolet);
   bb[15]=new solidbrush (color.deeppink);

   pen[] pp;
   pp=new pen [100];
   pp[1]=new pen (color.darkred);
   pp[2]=new pen (color.darkslateblue);
   pp[3]=new pen (color.darkgray);
   pp[4]=new pen (color.yellowgreen);
   pp[5]=new pen (color.darksalmon);
   pp[6]=new pen (color.darkorange);
   pp[7]=new pen (color.lightyellow);
   pp[8]=new pen (color.slateblue);
   pp[9]=new pen (color.black);
   pp[10]=new pen (color.yellowgreen);
   pp[11]=new pen (color.darkseagreen);
   pp[12]=new pen (color.darkslategray);
   pp[13]=new pen (color.darkturquoise);
   pp[14]=new pen (color.darkviolet);
   pp[15]=new pen (color.deeppink);
   
   
   getxmlfilevalue(pathfilename,”diagramtype”,ref appvalue);
   switch(appvalue)
   {
    case “histogram”://柱形图
     histogrambegain();
     g.drawline (pen,label2.left +label2.width ,label3.top-5,label3.left+label3.width,label3.top-5);
     g.drawline (pen,label2.left +label2.width ,label3.top-5,label2.left +label2.width ,label2.top-5);

     
     for(int i=1;i<=num;i++)
     {
      for(int j=1;j<=jnum;j++)
      {
       g.fillrectangle(bb[j],x[j,i],y[j,i],polebold,yy[j,i]);
      }
     
     }
     break;
    case”flexdiagram”://折线图
     flexdiagrambegain();
     g.drawline (pen,label2.left +label2.width ,label3.top-5,label3.left+label3.width,label3.top-5);
     g.drawline (pen,label2.left +label2.width ,label3.top-5,label2.left +label2.width ,label2.top-5);

     for(int i=1;i<num;i++)
     {
      for(int j=1;j<=jnum;j++)
      {
       g.drawline (pp[j],x[j,i],y[j,i],x[j,i+1],y[j,i+1]);
      }
     }
     for(int i=1;i<=num;i++)
     {
      for(int j=1;j<=jnum;j++)
      {
       g.drawline(pen2,x[j,i],y[j,i],x[j,i],label3.top-5);
      }
     }
     break;
    case”cakydiagram”://饼形图
     cakydiagrambegain();
     g.drawline (pen,label2.left +label2.width ,label3.top-5,label3.left+label3.width,label3.top-5);
     g.drawline (pen,label2.left +label2.width ,label3.top-5,label2.left +label2.width ,label2.top-5);

     for(int i=1;i<=num;i++)
     {
      g.fillpie (bb[i],formwidth/6,formheight/6,kuandu,kuandu,startangl[i],sweepangl[i]);
     }
     break;

    default:

     break;
   }

  }

  
  #endregion
 }
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

//xml文件内容,此文件必须放在应用程序目录,文件名xmlchart.xml

<?xml version=”1.0″ encoding=”utf-8″ ?>
<configuration>
  <appsettings>
    <add key=”diagramtype” value=”histogram” />
    <add key=”diagramname” value=”1-12月产品数量对比” />
    <add key=”xname” value=”月份” />
    <add key=”yname” value=”数量” />
    <add key=”jnum” value=”2″ />
    <add key=”num” value=”5″ />
    <add key=”text” value=”yes” />
    <add key=”id1″ value=”1月” />
    <add key=”id2″ value=”2月” />
    <add key=”id3″ value=”3月” />
    <add key=”id4″ value=”4月” />
    <add key=”id5″ value=”5月” />
    <add key=”id6″ value=”6月” />
    <add key=”id7″ value=”7月” />
    <add key=”id8″ value=”8月” />
    <add key=”id9″ value=”9月” />
    <add key=”id10″ value=”10月” />
    <add key=”id11″ value=”11月” />
    <add key=”id12″ value=”12月” />
    <add key=”id13″ value=”1月” />
    <add key=”id14″ value=”2月” />
    <add key=”id15″ value=”3月” />
    <add key=”id16″ value=”4月” />
    <add key=”id17″ value=”5月” />
    <add key=”id18″ value=”6月” />
    <add key=”id19″ value=”7月” />
    <add key=”id20″ value=”8月” />
    <add key=”id21″ value=”9月” />
    <add key=”id22″ value=”10月” />
    <add key=”id23″ value=”11月” />
    <add key=”id24″ value=”12月” />
    <add key=”id25″ value=”1月” />
    <add key=”id1num1″ value=”9″ />
    <add key=”id1num2″ value=”5″ />
    <add key=”id1num3″ value=”6″ />
    <add key=”id1num4″ value=”7″ />
    <add key=”id1num5″ value=”4″ />
    <add key=”id1num6″ value=”6″ />
    <add key=”id1num7″ value=”5″ />
    <add key=”id1num8″ value=”3″ />
    <add key=”id1num9″ value=”2″ />
    <add key=”id1num10″ value=”1″ />
    <add key=”id1num11″ value=”2″ />
    <add key=”id1num12″ value=”2″ />
    <add key=”id1num13″ value=”2″ />
    <add key=”id1num14″ value=”2″ />
    <add key=”id1num15″ value=”2″ />
    <add key=”id1num16″ value=”2″ />
    <add key=”id1num17″ value=”2″ />
    <add key=”id1num18″ value=”2″ />
    <add key=”id1num19″ value=”2″ />
    <add key=”id1num20″ value=”2″ />
    <add key=”id1num21″ value=”2″ />
    <add key=”id1num22″ value=”2″ />
    <add key=”id1num23″ value=”2″ />
    <add key=”id1num24″ value=”2″ />
    <add key=”id1num25″ value=”2″ />
    <add key=”id2num1″ value=”4″ />
    <add key=”id2num2″ value=”5″ />
    <add key=”id2num3″ value=”4″ />
    <add key=”id2num4″ value=”1″ />
    <add key=”id2num5″ value=”5″ />
    <add key=”id2num6″ value=”3″ />
    <add key=”id2num7″ value=”4″ />
    <add key=”id2num8″ value=”1″ />
    <add key=”id2num9″ value=”2″ />
    <add key=”id2num10″ value=”4″ />
    <add key=”id2num11″ value=”5″ />
    <add key=”id2num12″ value=”2″ />
    <add key=”id2num13″ value=”2″ />
    <add key=”id2num14″ value=”2″ />
    <add key=”id2num15″ value=”2″ />
    <add key=”id2num16″ value=”2″ />
    <add key=”id2num17″ value=”2″ />
    <add key=”id2num18″ value=”2″ />
    <add key=”id2num19″ value=”2″ />
    <add key=”id2num20″ value=”2″ />
    <add key=”id2num21″ value=”2″ />
    <add key=”id2num22″ value=”2″ />
    <add key=”id2num23″ value=”2″ />
    <add key=”id2num24″ value=”2″ />
    <add key=”id2num25″ value=”2″ />
    <add key=”id3num1″ value=”4″ />
    <add key=”id3num2″ value=”5″ />
    <add key=”id3num3″ value=”6″ />
    <add key=”id3num4″ value=”1″ />
    <add key=”id3num5″ value=”2″ />
    <add key=”id3num6″ value=”2″ />
    <add key=”id3num7″ value=”5″ />
    <add key=”id3num8″ value=”2″ />
    <add key=”id3num9″ value=”5″ />
    <add key=”id3num10″ value=”7″ />
    <add key=”id3num11″ value=”9″ />
    <add key=”id3num12″ value=”2″ />
    <add key=”id3num13″ value=”2″ />
    <add key=”id3num14″ value=”2″ />
    <add key=”id3num15″ value=”2″ />
    <add key=”id3num16″ value=”2″ />
    <add key=”id3num17″ value=”2″ />
    <add key=”id3num18″ value=”2″ />
    <add key=”id3num19″ value=”2″ />
    <add key=”id3num20″ value=”2″ />
    <add key=”id3num21″ value=”2″ />
    <add key=”id3num22″ value=”2″ />
    <add key=”id3num23″ value=”2″ />
    <add key=”id3num24″ value=”2″ />
    <add key=”id3num25″ value=”2″ />
    <add key=”id4num1″ value=”2″ />
    <add key=”id4num2″ value=”5″ />
    <add key=”id4num3″ value=”4″ />
    <add key=”id4num4″ value=”2″ />
    <add key=”id4num5″ value=”4″ />
    <add key=”id4num6″ value=”3″ />
    <add key=”id4num7″ value=”1″ />
    <add key=”id4num8″ value=”1″ />
    <add key=”id4num9″ value=”4″ />
    <add key=”id4num10″ value=”5″ />
    <add key=”id4num11″ value=”8″ />
    <add key=”id4num12″ value=”2″ />
    <add key=”id4num13″ value=”2″ />
    <add key=”id4num14″ value=”2″ />
    <add key=”id4num15″ value=”2″ />
    <add key=”id4num16″ value=”2″ />
    <add key=”id4num17″ value=”2″ />
    <add key=”id4num18″ value=”2″ />
    <add key=”id4num19″ value=”2″ />
    <add key=”id4num20″ value=”2″ />
    <add key=”id4num21″ value=”2″ />
    <add key=”id4num22″ value=”2″ />
    <add key=”id4num23″ value=”2″ />
    <add key=”id4num24″ value=”2″ />
    <add key=”id4num25″ value=”2″ />
    <add key=”id5num1″ value=”2″ />
    <add key=”id5num2″ value=”5″ />
    <add key=”id5num3″ value=”4″ />
    <add key=”id5num4″ value=”2″ />
    <add key=”id5num5″ value=”4″ />
    <add key=”id5num6″ value=”3″ />
    <add key=”id5num7″ value=”1″ />
    <add key=”id5num8″ value=”1″ />
    <add key=”id5num9″ value=”4″ />
    <add key=”id5num10″ value=”5″ />
    <add key=”id5num11″ value=”8″ />
    <add key=”id5num12″ value=”2″ />
    <add key=”id5num13″ value=”2″ />
    <add key=”id5num14″ value=”2″ />
    <add key=”id5num15″ value=”2″ />
    <add key=”id5num16″ value=”2″ />
    <add key=”id5num17″ value=”2″ />
    <add key=”id5num18″ value=”2″ />
    <add key=”id5num19″ value=”2″ />
    <add key=”id5num20″ value=”2″ />
    <add key=”id5num21″ value=”2″ />
    <add key=”id5num22″ value=”2″ />
    <add key=”id5num23″ value=”2″ />
    <add key=”id5num24″ value=”2″ />
    <add key=”id5num25″ value=”2″ />
    <add key=”id6num1″ value=”2″ />
    <add key=”id6num2″ value=”5″ />
    <add key=”id6num3″ value=”4″ />
    <add key=”id6num4″ value=”2″ />
    <add key=”id6num5″ value=”4″ />
    <add key=”id6num6″ value=”3″ />
    <add key=”id6num7″ value=”1″ />
    <add key=”id6num8″ value=”1″ />
    <add key=”id6num9″ value=”4″ />
    <add key=”id6num10″ value=”5″ />
    <add key=”id6num11″ value=”8″ />
    <add key=”id6num12″ value=”2″ />
    <add key=”id6num13″ value=”2″ />
    <add key=”id6num14″ value=”2″ />
    <add key=”id6num15″ value=”2″ />
    <add key=”id6num16″ value=”2″ />
    <add key=”id6num17″ value=”2″ />
    <add key=”id6num18″ value=”2″ />
    <add key=”id6num19″ value=”2″ />
    <add key=”id6num20″ value=”2″ />
    <add key=”id6num21″ value=”2″ />
    <add key=”id6num22″ value=”2″ />
    <add key=”id6num23″ value=”2″ />
    <add key=”id6num24″ value=”2″ />
    <add key=”id6num25″ value=”2″ />
    <add key=”id7num1″ value=”2″ />
    <add key=”id7num2″ value=”5″ />
    <add key=”id7num3″ value=”4″ />
    <add key=”id7num4″ value=”2″ />
    <add key=”id7num5″ value=”4″ />
    <add key=”id7num6″ value=”3″ />
    <add key=”id7num7″ value=”1″ />
    <add key=”id7num8″ value=”1″ />
    <add key=”id7num9″ value=”4″ />
    <add key=”id7num10″ value=”5″ />
    <add key=”id7num11″ value=”8″ />
    <add key=”id7num12″ value=”2″ />
    <add key=”id7num13″ value=”2″ />
    <add key=”id7num14″ value=”2″ />
    <add key=”id7num15″ value=”2″ />
    <add key=”id7num16″ value=”2″ />
    <add key=”id7num17″ value=”2″ />
    <add key=”id7num18″ value=”2″ />
    <add key=”id7num19″ value=”2″ />
    <add key=”id7num20″ value=”2″ />
    <add key=”id7num21″ value=”2″ />
    <add key=”id7num22″ value=”2″ />
    <add key=”id7num23″ value=”2″ />
    <add key=”id7num24″ value=”2″ />
    <add key=”id7num25″ value=”2″ />
    <add key=”id8num1″ value=”2″ />
    <add key=”id8num2″ value=”5″ />
    <add key=”id8num3″ value=”4″ />
    <add key=”id8num4″ value=”2″ />
    <add key=”id8num5″ value=”4″ />
    <add key=”id8num6″ value=”3″ />
    <add key=”id8num7″ value=”1″ />
    <add key=”id8num8″ value=”1″ />
    <add key=”id8num9″ value=”4″ />
    <add key=”id8num10″ value=”5″ />
    <add key=”id8num11″ value=”8″ />
    <add key=”id8num12″ value=”2″ />
    <add key=”id8num13″ value=”2″ />
    <add key=”id8num14″ value=”2″ />
    <add key=”id8num15″ value=”2″ />
    <add key=”id8num16″ value=”2″ />
    <add key=”id8num17″ value=”2″ />
    <add key=”id8num18″ value=”2″ />
    <add key=”id8num19″ value=”2″ />
    <add key=”id8num20″ value=”2″ />
    <add key=”id8num21″ value=”2″ />
    <add key=”id8num22″ value=”2″ />
    <add key=”id8num23″ value=”2″ />
    <add key=”id8num24″ value=”2″ />
    <add key=”id8num25″ value=”2″ />  
    <add key=”id9num1″ value=”2″ />
    <add key=”id9num2″ value=”5″ />
    <add key=”id9num3″ value=”4″ />
    <add key=”id9num4″ value=”2″ />
    <add key=”id9num5″ value=”4″ />
    <add key=”id9num6″ value=”3″ />
    <add key=”id9num7″ value=”1″ />
    <add key=”id9num8″ value=”1″ />
    <add key=”id9num9″ value=”4″ />
    <add key=”id9num10″ value=”5″ />
    <add key=”id9num11″ value=”8″ />
    <add key=”id9num12″ value=”2″ />
    <add key=”id9num13″ value=”2″ />
    <add key=”id9num14″ value=”2″ />
    <add key=”id9num15″ value=”2″ />
    <add key=”id9num16″ value=”2″ />
    <add key=”id9num17″ value=”2″ />
    <add key=”id9num18″ value=”2″ />
    <add key=”id9num19″ value=”2″ />
    <add key=”id9num20″ value=”2″ />
    <add key=”id9num21″ value=”2″ />
    <add key=”id9num22″ value=”2″ />
    <add key=”id9num23″ value=”2″ />
    <add key=”id9num24″ value=”2″ />
    <add key=”id9num25″ value=”2″ />
    <add key=”id10num1″ value=”2″ />
    <add key=”id10num2″ value=”5″ />
    <add key=”id10num3″ value=”4″ />
    <add key=”id10num4″ value=”2″ />
    <add key=”id10num5″ value=”4″ />
    <add key=”id10num6″ value=”3″ />
    <add key=”id10num7″ value=”1″ />
    <add key=”id10num8″ value=”1″ />
    <add key=”id10num9″ value=”4″ />
    <add key=”id10num10″ value=”5″ />
    <add key=”id10num11″ value=”8″ />
    <add key=”id10num12″ value=”2″ />
    <add key=”id10num13″ value=”2″ />
    <add key=”id10num14″ value=”2″ />
    <add key=”id10num15″ value=”2″ />
    <add key=”id10num16″ value=”2″ />
    <add key=”id10num17″ value=”2″ />
    <add key=”id10num18″ value=”2″ />
    <add key=”id10num19″ value=”2″ />
    <add key=”id10num20″ value=”2″ />
    <add key=”id10num21″ value=”2″ />
    <add key=”id10num22″ value=”2″ />
    <add key=”id10num23″ value=”2″ />
    <add key=”id10num24″ value=”2″ />
    <add key=”id10num25″ value=”2″ />           
   </appsettings>
</configuration>

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 柱形图 和 折线图 饼形图控件-.NET教程,报表/图形/Office
分享到: 更多 (0)