private void OnCustomDrawSeries(object sender, CustomDrawSeriesEventArgs e)
        {
            bool isSelected = e.Series.Name.Equals(trackedSeriesName);
            // Design a series marker image.
            Bitmap image = new Bitmap(totalWidth, totalHeight);

            using (Graphics graphics = Graphics.FromImage(image)) {
                using (var fillBrush = isSelected ? (Brush) new HatchBrush(HatchStyle.DarkDownwardDiagonal,
                                                                           e.LegendDrawOptions.Color,
                                                                           e.LegendDrawOptions.ActualColor2)
                                                  : (Brush) new SolidBrush(e.LegendDrawOptions.Color)) {
                    graphics.FillRectangle(fillBrush, totalRect);
                }
                Image photo;
                if (photoCache.TryGetValue(e.Series.Name, out photo))
                {
                    graphics.DrawImage(photo, photoRect);
                }
            }
            e.LegendMarkerImage        = image;
            e.DisposeLegendMarkerImage = true;

            BarDrawOptions options = e.SeriesDrawOptions as BarDrawOptions;

            if (options != null && isSelected)
            {
                options.FillStyle.FillMode = DevExpress.XtraCharts.FillMode.Hatch;
                ((HatchFillOptions)options.FillStyle.Options).HatchStyle = HatchStyle.DarkDownwardDiagonal;
            }
        }
예제 #2
0
        void OnCustomDrawSeries(object sender, CustomDrawSeriesEventArgs e)
        {
            Bitmap bitmap = new Bitmap(LegendRadioSide, LegendRadioSide);

            using (Graphics graphics = Graphics.FromImage(bitmap)) {
                graphics.SmoothingMode = SmoothingMode.HighQuality;
                Color seriesColor = GetSeriesColor(e.Series, chartControl);
                using (Pen radioPen = new Pen(seriesColor, LegendRadioWidth)) {
                    int       radioRadius    = LegendRadioSide - 3;
                    Rectangle radioRectangle = new Rectangle(1, 1, radioRadius, radioRadius);
                    graphics.DrawEllipse(radioPen, radioRectangle);
                }
                if (e.Series.CheckedInLegend)
                {
                    using (Brush brush = new SolidBrush(seriesColor)) {
                        int       coord = (LegendRadioSide - LegendRadioInnerPointBoundsSide) / 2;
                        Rectangle filledEllipseBounds = new Rectangle(coord, coord,
                                                                      LegendRadioInnerPointBoundsSide, LegendRadioInnerPointBoundsSide);
                        graphics.FillEllipse(brush, filledEllipseBounds);
                    }
                }
            }
            e.DisposeLegendMarkerImage = true;
            e.LegendMarkerImage        = bitmap;
        }
예제 #3
0
 private void MemberActualInputChartPie_CustomDrawSeries(object sender, CustomDrawSeriesEventArgs e)
 {
     if (MemberActualInputChartPie.Series.Count > 0 && MemberActualInputChartPie.Series[0] != e.Series)
     {
         e.LegendText          = string.Empty;
         e.Series.ShowInLegend = false;
     }
 }
예제 #4
0
        protected void Lineplot_TransparentLine(object sender, CustomDrawSeriesEventArgs e)
        {
            var t = e.Series.View;

            if (t.ToString() == "Line")
            {
                (e.SeriesDrawOptions as LineDrawOptions).Color =
                    e.SeriesDrawOptions.Color = Color.FromArgb(80, e.SeriesDrawOptions.Color);
            }
        }
예제 #5
0
        private void chart_CustomDrawSeries(object sender, CustomDrawSeriesEventArgs e)
        {
            Bitmap   lmi = new Bitmap(33, 15);
            Graphics g   = Graphics.FromImage(lmi);

            g.FillRectangle(new SolidBrush(e.SeriesDrawOptions.Color), new Rectangle(0, 0, 17, 15));
            g.DrawRectangle(new Pen(e.SeriesDrawOptions.Color), new Rectangle(18, 0, 14, 14));
            if (e.Series.CheckedInLegend)
            {
                g.DrawLines(new Pen(e.SeriesDrawOptions.Color, 2), new Point[] { new Point(21, 6), new Point(25, 10), new Point(29, 3) });
            }
            e.LegendMarkerImage = lmi;
        }
예제 #6
0
 private void chartControl1_CustomDrawSeries(object sender, CustomDrawSeriesEventArgs e)
 {
     if (e.Series == InterestSeries)
     {
         if (interestBrush == null)
         {
             interestBrush = new SolidBrush(e.SeriesDrawOptions.ActualColor2);
         }
         if (paymentPen == null)
         {
             paymentPen = new Pen(interestBrush);
         }
     }
     else if (e.Series == PrincipalSeries)
     {
         if (principalBrush == null)
         {
             principalBrush = new SolidBrush(e.SeriesDrawOptions.Color);
         }
     }
 }
예제 #7
0
 private void chartControl1_CustomDrawSeries(object sender, CustomDrawSeriesEventArgs e)
 {
     
 }
 private void chartControl1_CustomDrawSeries(object sender, CustomDrawSeriesEventArgs e)
 {
     e.LegendText = e.LegendText.Remove(0, 3);
 }
예제 #9
0
 private void ChartControl_OnCustomDrawSeries(object sender, CustomDrawSeriesEventArgs e)
 {
     e.LegendText = (e.Series.Tag as ComplexId)?.Key1 + (e.Series.Tag as ComplexId)?.Key2;
 }
예제 #10
0
 private void chartControl1_CustomDrawSeries(object sender, CustomDrawSeriesEventArgs e)
 {
     e.LegendMarkerImage = photos[e.Series.Name];
 }
예제 #11
0
 private void chartControl1_CustomDrawSeries(object sender, CustomDrawSeriesEventArgs e)
 {
     UpdateDrawOptions((BarDrawOptions)e.SeriesDrawOptions);
     UpdateDrawOptions((BarDrawOptions)e.LegendDrawOptions);
 }
예제 #12
0
 protected void Mychart_TransparentLine(object sender, CustomDrawSeriesEventArgs e)
 {
     (e.SeriesDrawOptions as LineDrawOptions).Color =
         e.SeriesDrawOptions.Color = Color.FromArgb(80, e.SeriesDrawOptions.Color);
 }
예제 #13
0
 void IChartEventsProvider.OnCustomDrawSeries(CustomDrawSeriesEventArgs e)
 {
 }