none
Chart.AxisY.CustomLabels 裡面的 Item Name 是否會因為畫面顯示而產生異動 RRS feed

  • 問題

  • 原本想透過變數來變化 CustomLabel 的內容
    CustomLabel m_CustomLabel = ....
    m_CustomLabel.Name = "Label_01";

    chart1.ChartAreas[0].AxisY.CustomLabels.Add(m_CustomLabel);

    到此為止都沒問題,也確定 chart1.ChartAreas[0].AxisY.CustomLabels 裡面是存在 m_CustomLabel (Name = Label_01)

    但是只要Chart 一經顯示之後

    此時再去觀察 chart1.ChartAreas[0].AxisY.CustomLabels 的內容會發現還是存在一個 CustomLabel
    相關數值都跟原本的 m_CustomLabel 一樣 (From  To Text ...)
    唯獨 Name 的內容是空白的

    導致原本想透過 m_CustomLabel 來改變內容的想法失效
    (因為此時 chart1.ChartAreas[0].AxisY.CustomLabels 裡面的 CustomLabel 已經不是 m_CustomLabel)

    想請教一下 , 是否哪個環節遺漏或是這樣的想法是不可行的 ?

    2016年12月22日 上午 02:11

所有回覆

  • 您的程式是加入多個CustomLabel嗎? 看起來像是多個CustomLabel名稱重覆引發的問題, 看看這篇有沒幫助:

    Get custom label from clicked column of MS Chart control (WinForm)

    2016年12月22日 上午 03:58
  • 您好

    是加入多個沒錯,但每一個都有賦予不同的 Name
    即使只是加入一個(如問題所描述的...只有加入一個 CustomLabel) 也會發生同樣的情況

    目前能夠找到的關鍵點是 :  
    after Chart_VisiableChanged event 
    比如一開始畫面是在第一個 tabPage
    Chart 則是在第二個 tabPage
    此時加入自訂標籤 , 並透過一些測試方式都確認
    AxisY.CustomLabels 裡面的 Name 都存在
    只要把畫面切到第二個 tabPage , 再去檢視就會發現 Name 的屬性變成空白

    目前找了很多資料,但還是不知是哪個環節會造成這樣的現象


    2016年12月22日 上午 05:30
  • 請問加入CustomLabels是寫在那個程序裏?
    2016年12月23日 上午 04:00