コード例 #1
0
        private void SetItemsSource(Point point, ISupportAxes series)
        {
            var chartSeries = series as CartesianSeries;
            var pointx      = Math.Truncate(ChartArea.PointToValue(series.ActualXAxis, point));
            var pointy      = Math.Truncate(ChartArea.PointToValue(series.ActualYAxis, point));

            if (chartSeries == null || (!(pointx >= 0) || !(pointx < chartSeries.DataCount)))
            {
                return;
            }
            var dataSource = chartSeries.ItemsSource as List <StockDatas>;

            if (dataSource != null)
            {
                customInfo = new ChartCustomInfo
                {
                    LabelX  = chartSeries.Label,
                    ValueX  = dataSource[(int)pointx].TimeStamp.ToString("MM-dd-yyyy"),
                    ValueY  = pointy.ToString(series.ActualYAxis.LabelFormat, CultureInfo.CurrentCulture),
                    YValues = GetYValuesBasedOnIndex(pointx, chartSeries)
                }
            }
            ;
            if (AnalyticsInfo.VersionInfo.DeviceFamily != "Windows.Mobile")
            {
                customInfo.LabelY = ChartArea.SecondaryAxis.Header.ToString();
            }
            yCount = customInfo.YValues.Count;
            customInfo.LabelYValues = GetLabelYValues();
            customInfo.Visibility   = Visibility.Visible;
            PointInfos.Add(customInfo);
            PositionSummaryControl(point, chartSeries);
        }
コード例 #2
0
        public object Convert(object value, Type targetType, object parameter, string language)
        {
            ChartCustomInfo obj = value as ChartCustomInfo;

            return(obj.LabelX + " " + "|" + " " + obj.ValueX.ToString());
        }