2010-07-28 51 views
1

我正在開發一個股票演變圖,微軟圖表控件,我需要在AxisX標籤上顯示最初和最後的日期,但我不能這樣做。如何始終使用Microsoft圖表控件顯示第一個和最後一個AxisX標籤?

我谷歌,發現了很多解決方案,如設置屬性:

Chart1.ChartAreas[0].AxisX.Minimum = InitialDate.ToOADate(); 
Chart1.ChartAreas[0].AxisX.Maximum = FinalDate.ToOADate(); 
Chart1.ChartAreas[0].AxisX.LabelStyle.IsEndLabelVisible = true; 

沒有做出同樣的differnce。我需要幫助!

對於初始日期下面的示例是2007年7月26日,最終是2010年7月26日,這是我需要顯示在圖表標籤上,其他日期沒有區別,可以顯示在任何間隔。

alt text http://img826.imageshack.us/img826/6518/evolucaoinvestimento.png

回答

2

我得到一個辦法:

// get the interval in days 
double days = (double)((TimeSpan)(FinalDate - InitialDate)).Days; 

// the number os labels 
double labels = 10.0; 

// check if the number of days is bigger than labels 
if (days > labels) 
{ 
    // calculate the interval 
    double interval = days/labels; 
    Chart1.ChartAreas[0].AxisX.Interval = interval; 
} 
else 
{ 
    // set the interval of 1 day 
    Chart1.ChartAreas[0].AxisX.Interval = 1; 
} 

下面是結果:

chart http://img691.imageshack.us/img691/7796/chartimgca42ufcm.png

3
LCharts(iChart).Chart.ChartAreas(0).AxisX.Minimum = MinDate.ToOADate 

LCharts(iChart).Chart.ChartAreas(0).AxisX.Maximum = MaxDate.ToOADate 

LCharts(iChart).Chart.ChartAreas(0).AxisX.IntervalAutoMode = IntervalAutoMode.VariableCount 

'LCharts(iChart).Chart.ChartAreas(0).AxisX.IsMarginVisible = True 

LCharts(iChart).Chart.ChartAreas(0).AxisX.LabelStyle.IsEndLabelVisible = True 
+0

爲我工作。 – 2015-06-15 15:03:03

相關問題