void MovableChartLabelPoint_MouseMove(object sender, MouseEventArgs e) { if (isMoving && startPt.X != 0 && startPt.Y != 0) { Offset = (Point)((e.GetPosition(null) - startPt)); ChartLabels lbls = this.Parent as ChartLabels; lbls.ForceArrange(); } }
public DecimatingArrangerSample() { InitializeComponent(); var arranger = new DecimatingLabelArranger(); lbls = new ChartLabels(); chart.View.Layers.Add(lbls); NewData(2); cbDecimation.Checked += (s, e) => lbls.LabelArranger = arranger; cbDecimation.Unchecked += (s, e) => lbls.LabelArranger = null; }
public PieArrangerSample() { InitializeComponent(); chart.ChartType = ChartType.Pie; var arranger = new PieArranger(); lbls = new ChartLabels() { LabelArranger = arranger }; chart.View.Layers.Add(lbls); NewData(); SizeChanged += (s, e) => lbls.EndUpdate(); }
public OptimalArrangerSample() { InitializeComponent(); var arranger = new OptimalLabelArranger(); lbls = new ChartLabels() { LabelArranger = arranger }; chart.View.Layers.Add(lbls); chart.MouseLeftButtonDown += new MouseButtonEventHandler(chart_MouseLeftButtonDown); NewData(5); cbHideOutside.Checked += (s, e) => arranger.HideLabelsOutsideBorder = true; cbHideOutside.Unchecked += (s, e) => arranger.HideLabelsOutsideBorder = false; }
public SimpleArrangerSample() { InitializeComponent(); // first layer with automatic label positioning var arranger = new SimpleArranger(); lbls = new ChartLabels() { LabelArranger = arranger }; chart.View.Layers.Add(lbls); // second layer with user-movable labels lbls2 = new ChartLabels(); chart.View.Layers.Add(lbls2); lbls2.LayoutUpdated += new EventHandler(lbls2_LayoutUpdated); NewData(5); chart.Actions.Add(new ZoomAction()); chart.Actions.Add(new TranslateAction() { Modifiers = ModifierKeys.Shift }); chart.Actions.Add(new ScaleAction() { Modifiers = ModifierKeys.Control }); chart.MouseLeftButtonDown += new MouseButtonEventHandler(chart_MouseLeftButtonDown); }