예제 #1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="RadCartesianChart"/> class.
        /// </summary>
        public RadCartesianChart()
        {
            this.DefaultStyleKey = typeof(RadCartesianChart);

            this.series      = new CartesianSeriesCollection(this);
            this.indicators  = new IndicatorCollection(this);
            this.annotations = new CartesianAnnotationCollection(this);

            this.legendInfos = new LegendItemCollection();
        }
예제 #2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="PieSeries"/> class.
        /// </summary>
        public PieSeries()
        {
            this.DefaultStyleKey = typeof(PieSeries);

            this.model         = new PieSeriesModel();
            this.segments      = new List <PieSegment>();
            this.segmentStyles = new ObservableCollection <Style>();
            this.segmentStyles.CollectionChanged += this.OnSegmentStylesChanged;

            this.legendInfos = new LegendItemCollection();

            this.ClipToPlotArea = false;
        }
        /// <summary>
        /// Initializes a new instance of the <see cref="RadLegendControl"/> class.
        /// </summary>
        public RadLegendControl()
        {
            this.DefaultStyleKey = typeof(RadLegendControl);

            this.localLegendItems = new LegendItemCollection();
        }
예제 #4
0
        /// <summary>
        ///     飞机饼状图的选择点事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        public void RadPieChartSelectionBehaviorSelectionChanged(object sender, ChartSelectionChangedEventArgs e)
        {
            var radChartBase = ((ChartSelectionBehavior) sender).Chart;
            var selectedPoint = radChartBase.SelectedPoints.FirstOrDefault() as PieDataPoint;
            var items = new LegendItemCollection();
            if (radChartBase.EmptyContent.ToString().Equals("座级分布", StringComparison.OrdinalIgnoreCase))
            {
                items = ((RadLegend) _regionalPieGrid.Children[1]).Items;
            }
            else if (radChartBase.EmptyContent.ToString().Equals("机型分布", StringComparison.OrdinalIgnoreCase))
            {
                items = ((RadLegend) _typePieGrid.Children[1]).Items;
            }

            if (selectedPoint != null)
            {
                items.ToList().ForEach(p => p.IsHovered = false);
                foreach (var item in items)
                {
                    if (item.Title.Equals(((FleetAircraftTypeComposition) selectedPoint.DataItem).AircraftRegional,
                        StringComparison.OrdinalIgnoreCase))
                    {
                        item.IsHovered = true;
                        break;
                    }
                }
                if (radChartBase.EmptyContent.ToString().Equals("座级分布", StringComparison.OrdinalIgnoreCase))
                {
                    GetGridViewDataSourse(selectedPoint, _regionalWindow, "座级");
                }
                else if (radChartBase.EmptyContent.ToString().Equals("机型分布", StringComparison.OrdinalIgnoreCase))
                {
                    GetGridViewDataSourse(selectedPoint, _typeWindow, "机型");
                }
            }
            else
            {
                if (radChartBase.EmptyContent.ToString().Equals("座级分布", StringComparison.OrdinalIgnoreCase))
                {
                    _regionalWindow.Close();
                }
                else if (radChartBase.EmptyContent.ToString().Equals("机型分布", StringComparison.OrdinalIgnoreCase))
                {
                    _typeWindow.Close();
                }
            }
        }
예제 #5
0
        /// <summary>
        ///     飞机饼状图的选择点事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        public void RadPieChartSelectionBehaviorSelectionChanged(object sender, ChartSelectionChangedEventArgs e)
        {
            var chartSelectionBehavior = sender as ChartSelectionBehavior;
            if (chartSelectionBehavior != null)
            {
                var radChartBase = chartSelectionBehavior.Chart;
                var selectedPoint = radChartBase.SelectedPoints.FirstOrDefault() as PieDataPoint;
                var items = new LegendItemCollection();
                switch (radChartBase.EmptyContent.ToString())
                {
                    case "飞机数分布":
                        items = ((RadLegend) _aircraftPieGrid.Children[1]).Items;
                        break;
                    case "座位数分布":
                        items = ((RadLegend) _seatPieGrid.Children[1]).Items;
                        break;
                    case "商载量分布":
                        items = ((RadLegend) _loadPieGrid.Children[1]).Items;
                        break;
                }

                if (selectedPoint != null)
                {
                    items.ToList().ForEach(p => p.IsHovered = false);
                    foreach (var item in items)
                    {
                        if (item.Title.Equals(((FleetAircraft) selectedPoint.DataItem).Aircraft,
                            StringComparison.OrdinalIgnoreCase))
                        {
                            item.IsHovered = true;
                            break;
                        }
                    }

                    switch (radChartBase.EmptyContent.ToString())
                    {
                        case "飞机数分布":
                            GetGridViewDataSourse(selectedPoint, _aircraftWindow, "飞机数");
                            break;
                        case "座位数分布":
                            GetGridViewDataSourse(selectedPoint, _seatWindow, "座位数");
                            break;
                        case "商载量分布":
                            GetGridViewDataSourse(selectedPoint, _loadWindow, "商载量");
                            break;
                    }
                }
                else
                {
                    switch (radChartBase.EmptyContent.ToString())
                    {
                        case "飞机数分布":
                            _aircraftWindow.Close();
                            break;
                        case "座位数分布":
                            _seatWindow.Close();
                            break;
                        case "商载量分布":
                            _loadWindow.Close();
                            break;
                    }
                }
            }
        }