2010-03-11 5 views
6

다음 그림과 같이 MS Chart로 만든 그래프가 있습니다. 보시다시피 수직선은 각 막대의 위쪽 값으로 엉망이됩니다. 그것이 각 막대의 상단에있는 값으로 엉망 때문에 디스플레이를 수직 라인을 원하지 않는MS Chart를 사용하는 ASP.NET은 수직선을 사용하지 않습니다.

 <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> 

:

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

다음은 그래프의 마크 업입니다. 수직선을 어떻게 비활성화 할 수 있습니까?

감사합니다. 필요한 경우

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

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

C# 버전 :

답변

4

내가 여기에 특정 ASP 구문을 알고 있지만하지 않는 트릭을 수행하는 VB.NET 코드

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

엡에서 일할 수 있습니다. 고맙습니다. –

+1

이 방법이 효과적이지만, 'Enabled' 속성을 사용하여 MajorGrid를 비활성화하는 것이 아마 최선의 방법 일 것입니다. – arviman

+0

@arviman, 게시 할 때 Enabled 속성을 false로 설정해도 실제로 눈금 선을 해제하거나 해제하지 않았습니다. 이 행동이 개입 된 달에 변경되었거나 수정되었는지 확인할 수 있습니까? – Stewbob

1

이 문제가 해결되었습니다. 감사.

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

간단한 방법 .... C# 코드입니다.

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

} 
1

간단한 방법, 차트로드 이벤트에 다음 코드를 넣어 :

다음은

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

이 트릭을 수행 소스

<ChartAreas> 
    <asp:ChartArea Name="ChartArea1"> 
     <AxisX> 
       <MajorGrid LineWidth="0" /> 
     </AxisX> 
    </asp:ChartArea> 
</ChartAreas>