프로젝트

일반

사용자정보

통계
| 브랜치(Branch): | 개정판:

markus / ConvertService / ServiceBase / Markus.Service.StationController / Controls / RightAlignedLabelStrategy.cs @ 80391351

이력 | 보기 | 이력해설 | 다운로드 (1.3 KB)

1
using GemBox.Spreadsheet.Charts;
2
using System;
3
using System.Collections.Generic;
4
using System.Linq;
5
using System.Text;
6
using System.Threading.Tasks;
7
using System.Windows;
8
using Telerik.Charting;
9
using Telerik.Windows.Controls;
10
using Telerik.Windows.Controls.ChartView;
11
using ChartSeries = Telerik.Windows.Controls.ChartView.ChartSeries;
12

    
13
namespace Markus.Service.StationController.Controls
14
{
15
        public class RightAlignedLabelStrategy : Telerik.Windows.Controls.ChartView.ChartSeriesLabelStrategy
16
        {
17
            public double Offset { get; set; }
18

    
19
            public override Telerik.Windows.Controls.ChartView.LabelStrategyOptions Options
20
            {
21
                get { return Telerik.Windows.Controls.ChartView.LabelStrategyOptions.Arrange; }
22
            }
23

    
24
            public override Telerik.Charting.RadRect GetLabelLayoutSlot(Telerik.Charting.DataPoint point, System.Windows.FrameworkElement visual, int labelIndex)
25
            {
26
                Size size = visual.DesiredSize;
27

    
28
                var series = (ChartSeries)point.Presenter;
29
                double top = point.LayoutSlot.Center.Y - (size.Height / 2);
30
                double left = series.Chart.PlotAreaClip.Right - size.Width + this.Offset;
31

    
32
                return new RadRect(left, top, size.Width, size.Height);
33
            }
34
        
35
    }
36
}
클립보드 이미지 추가 (최대 크기: 500 MB)