2010-03-11 6 views
6

У меня есть график, созданный с помощью MS Chart, как показано на следующем рисунке. Как вы можете видеть, вертикальные линии перепутаны со значением верхней части каждого столбца.ASP.NET с MS Chart отключить вертикальную линию

alt text http://img46.imageshack.us/img46/3720/chartimgaxd.png

Вот наценка на графике:

 <asp:Chart ID="chtNBAChampionships" runat="server"> 
    <Series> 
     <asp:Series Name="Championships" YValueType="Int32" ChartType="Column" ChartArea="MainChartArea" IsValueShownAsLabel="true"> 
     <Points> 
      <asp:DataPoint AxisLabel="Celtics" YValues="17" /> 
      <asp:DataPoint AxisLabel="Lakers" YValues="15" /> 
      <asp:DataPoint AxisLabel="Bulls" YValues="6" /> 
      <asp:DataPoint AxisLabel="Spurs" YValues="4" /> 
      <asp:DataPoint AxisLabel="76ers" YValues="3" /> 
      <asp:DataPoint AxisLabel="Pistons" YValues="3" /> 
      <asp:DataPoint AxisLabel="Warriors" YValues="3" /> 

     </Points> 
     </asp:Series> 
    </Series> 
    <ChartAreas> 
     <asp:ChartArea Name="MainChartArea"> 
     </asp:ChartArea> 
    </ChartAreas> 
</asp:Chart> 

Я не хочу, дисплей на вертикальную линию, потому что это перепутались со значением на верхней части каждого бара. Как отключить вертикальную линию?

спасибо.

ответ

4

Я не знаю, конкретный синтаксис ASP, но вот код VB.NET, что делает трюк:

Dim gd As New System.Windows.Forms.DataVisualization.Charting.Grid 
gd.LineWidth = 0 

myChart.ChartAreas("MainChartArea").AxisX.MajorGrid = gd 

C# версии, если это необходимо:

System.Web.UI.DataVisualization.Charting.Grid gd = new System.Web.UI.DataVisualization.Charting.Grid(); 
gd.LineWidth = 0; 

myChart.ChartAreas[0].AxisX.MajorGrid = gd; 

Как вы можете видеть , вы не можете просто отключить линию сетки, вы должны установить ее ширину в 0. MinorGrid можно скрыть так же.

+0

Yeap, что делает трюк. Спасибо. –

+1

Это работает, но отключение MajorGrid с использованием свойства «Enabled», вероятно, является лучшим способом сделать это. – arviman

+0

@arviman, во время публикации, установка свойства Enabled на значение false фактически не отключает или не отключает линию сетки. Можете ли вы подтвердить, что это изменение изменилось/было исправлено за прошедшие месяцы? – Stewbob

1

Это решило проблему. Благодарю.

Ниже C# код ....

var gd = new System.Web.UI.DataVisualization.Charting.Grid(); 
gd.LineWidth = 0; 
Chart1.ChartAreas[0].AxisX.MajorGrid = gd; 
11

простой способ:

Chart1.ChartAreas[0].AxisX.MajorGrid.Enabled = false; 
1

Простейшее путь, поместите следующий код в случае график нагрузки.

protected void Chart1_Load(object sender, EventArgs e) 
{ 
    Chart1.ChartAreas[0].AxisX.MajorGrid.Enabled = false; 
    Chart1.ChartAreas[0].AxisY.MajorGrid.Enabled = false; 

} 
0

Это может работать от источника

<ChartAreas> 
    <asp:ChartArea Name="ChartArea1"> 
     <AxisX> 
       <MajorGrid LineWidth="0" /> 
     </AxisX> 
    </asp:ChartArea> 
</ChartAreas> 
Смежные вопросы