Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [c#] Aggiornare il valore di un Points in un chart control

    Ho un piccolo problema: devo cambiare il falore di un Points all'interno di un grafico fatto in un chart control in un form con c#.
    Ho fatto un test in questo modo:
    codice:
    private void button2_Click(object sender, EventArgs e)
            {
                
                chart1.Series[0].Points[0].SetValueY(700);
                
                //chart1.Series[0].Points.Add(400);
            }
    La cosa strana è che se modiica il parametro Points[0] non viene agiornato l'aspetto del grafico se invede aggiundo un nuovo Points il grafico viene aggiornato.
    Ho cercato dappertuto nella documentazione msn se c'è un metodo .refresh() come per le textBox ma non esiste, ho cercato informazioni dappertutto ma non ho trovato altri sistemi per modificare il valore di un elemto del grafico se non quello mostrato sopra.
    Sto usando visual studio 2010 con fremwork 4 lo dico perche ho cercato di scaricare la guida che indicavate qui:

    http://blog.html.it/28/11/2008/aspnet-chart-control/

    ma non va bene....
    non so più cosa fare per questo mi sono appellato a voi.
    Grazie dell'aiuto.
    Ciao.
    un uomo senza panza e come un cielo senza stelle ...mio tris ...

  2. #2
    Utente di HTML.it L'avatar di GabbOne
    Registrato dal
    Mar 2006
    Messaggi
    577
    be il refresh lo potresti ottenere con il DataBind() del grafico anche se forse sarai costrtto a ricreare la serie associata

    ciao

  3. #3
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    CreaGrafico()
    Me.Chart1.Series(0).Points(0).SetValueY(40)

    in pratica, prima ricreo il grafico, poi imposto il valore del primo punto

    Pietro

  4. #4
    Ho trovato un metodo che fa anche il refresh anche se probabilmente non è nato per questo però funziona:
    codice:
    private void button2_Click(object sender, EventArgs e)
            {
    
                chart1.Series[0].Points[0].SetValueY(700);
                chart1.ChartAreas[0].RecalculateAxesScale(); 
     
            }
    Grazie della collaborazione ...
    un uomo senza panza e come un cielo senza stelle ...mio tris ...

  5. #5
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Purtroppo io parlavo di pagine web, mentre mi pare che tratti di windows form

    Comunque funzionano ambedue i modi: (in basic, al click di un pulsante, in una windows form)

    Me.Chart1.Series(0).Points(0).SetValueY(40)
    Me.Chart1.ChartAreas(0).RecalculateAxesScale()


    oppure
    CreaGrafico()
    Me.Chart1.Series(0).Points(0).SetValueY(40)

    Pietro

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.