Ejemplo n.º 1
0
 /// <summary>
 /// Sets the data source.
 /// </summary>
 /// <param name="names">The names.</param>
 /// <param name="values">The values.</param>
 /// <exception cref="System.ArgumentNullException">
 /// names
 /// or
 /// values
 /// </exception>
 /// <exception cref="System.Exception">两个数组的长度不一致!</exception>
 public void SetDataSource(string[] names, int[] values)
 {
     if (names == null)
     {
         throw new ArgumentNullException("names");
     }
     if (values == null)
     {
         throw new ArgumentNullException("values");
     }
     if (names.Length != values.Length)
     {
         throw new Exception("两个数组的长度不一致!");
     }
     pieItems = new PieItem[names.Length];
     for (int i = 0; i < names.Length; i++)
     {
         pieItems[i] = new PieItem
         {
             Name  = names[i],
             Value = values[i]
         };
     }
     Invalidate();
 }
Ejemplo n.º 2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="UCPieChart"/> class.
        /// </summary>
        public UCPieChart()
        {
            InitializeComponent();
            random                     = new Random();
            formatCenter               = new StringFormat();
            formatCenter.Alignment     = StringAlignment.Center;
            formatCenter.LineAlignment = StringAlignment.Center;
            SetStyle(ControlStyles.UserPaint | ControlStyles.SupportsTransparentBackColor, true);
            SetStyle(ControlStyles.ResizeRedraw, true);
            SetStyle(ControlStyles.OptimizedDoubleBuffer, true);
            SetStyle(ControlStyles.AllPaintingInWmPaint, true);
            pieItems = new PieItem[0];
            if (GetService(typeof(IDesignerHost)) != null || LicenseManager.UsageMode == LicenseUsageMode.Designtime)
            {
                pieItems = new PieItem[5];

                for (int i = 0; i < 5; i++)
                {
                    pieItems[i] = new PieItem
                    {
                        Name  = "Source" + (i + 1),
                        Value = random.Next(10, 100)
                    };
                }
            }
        }