private void RefreshXLabels()
        {
            if (double.IsNaN(ViewMaximum) || double.IsNaN(ViewMinimum) ||
                ViewMaximum - ViewMinimum < 1)
            {
                return;
            }
            double labelStep      = (ViewMaximum - ViewMinimum) / MajorGridCount;
            double labelRangeSize = labelStep / 2;
            double labelPosition  = ViewMinimum;

            for (int i = 0; i < MajorGridCount; i++)
            {
                CustomLabels[i].FromPosition = labelPosition - labelRangeSize;
                CustomLabels[i].ToPosition   = labelPosition + labelRangeSize;
                CustomLabels[i].Text         = _parentChart.GetXLabelValue(labelPosition);
                labelPosition += labelStep;
            }

            // 最后一个做特殊处理
            labelPosition = ViewMaximum;
            CustomLabels[MajorGridCount].FromPosition = labelPosition - labelRangeSize;
            CustomLabels[MajorGridCount].ToPosition   = labelPosition + labelRangeSize;
            // 最后一个点使用
            if (labelPosition > -1)
            {
                labelPosition = -1;
            }
            CustomLabels[MajorGridCount].Text = _parentChart.GetXLabelValue(labelPosition);
        }
示例#2
0
 internal string GetXValue(int xValue)
 {
     return(_parentChart.GetXLabelValue(xValue));
 }