Ejemplo n.º 1
0
        /// <summary>
        /// Method implementation for Get LabelContent for given position
        /// </summary>
        /// <param name="axis"></param>
        /// <param name="position"></param>
        /// <returns></returns>
        internal static object GetLabelContent(ChartAxis axis, double position)
        {
            ChartSeriesBase actualSeries =
                axis.Area.VisibleSeries
                .Where(series => series.ActualXAxis == axis)
                .Max(filteredSeries => filteredSeries.DataCount);

            if (actualSeries != null)
            {
                if (axis.CustomLabels.Count > 0 || axis.LabelsSource != null)
                {
                    return(axis.GetCustomLabelContent(position) ?? GetLabelContent(axis, (int)Math.Round(position), actualSeries) ?? string.Empty);
                }
                else
                {
                    return(GetLabelContent(axis, (int)Math.Round(position), actualSeries) ?? string.Empty);
                }
            }

            return(position);
        }