Problème affichage chart

publespace Messages postés 31 Date d'inscription samedi 18 août 2007 Statut Membre Dernière intervention 15 mars 2016 - 13 mars 2016 à 19:31
publespace Messages postés 31 Date d'inscription samedi 18 août 2007 Statut Membre Dernière intervention 15 mars 2016 - 15 mars 2016 à 09:22
Bonjour, je cherche la méthode pour afficher mon chart dans ma form

voila mon code



'je créé mon chart
Dim Chart2 As New DataVisualization.Charting.Chart

' Créer ChartArea (zone graphique)
Dim ChartArea1 As New DataVisualization.Charting.ChartArea()

' Ajouter le Chart Area à la Collection ChartAreas du Chart
Chart2.ChartAreas.Add(ChartArea1)

' Créer deux data series (qui contiendront les DataPoint)
Dim series1 As New DataVisualization.Charting.Series()
Dim series2 As New DataVisualization.Charting.Series()

' Ajouter des points à la collections Points de la première series
series1.Points.Add(38)
series1.Points.Add(26)
series1.Points.Add(32)
series1.Points.Add(28)
series1.Points.Add(45)

' Ajouter des points à la collection Points de la seconde series
series2.Points.Add(12)
series2.Points.Add(43)
series2.Points.Add(24)
series2.Points.Add(12)
series2.Points.Add(28)

'On indique d'afficher ces Series sur le ChartArea1
series1.ChartArea = "ChartArea1"
series2.ChartArea = "ChartArea1"

' Ajouter les series à la collection Series du chart
Chart2.Series.Add(series1)
Chart2.Series.Add(series2)

' Positionner le controle Chart
Chart2.Location = New System.Drawing.Point(15, 45)

' Dimensionner le Chart
Chart2.Size = New System.Drawing.Size(360, 260)

' Ajouter le chart à la form
grid_pilote.Children.Add(Chart2)





c'est la ligne grid_pilote.Children.Add(Chart2) qui coince elle m'affiche l'erreur suivante



Impossible de convertir une valeur de type 'Chart' en 'UIElement'.



des suggestions ?

4 réponses

Whismeril Messages postés 19024 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 18 avril 2024 656
13 mars 2016 à 20:19
Bonsoir, dans la question précédente tu faisais du wpf.
T'es passé en winform?

0
publespace Messages postés 31 Date d'inscription samedi 18 août 2007 Statut Membre Dernière intervention 15 mars 2016
13 mars 2016 à 20:31
en effet j'ai fait un mauvais usage du terme "wpf"

je code sur vs2015
0
Whismeril Messages postés 19024 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 18 avril 2024 656
13 mars 2016 à 21:31
oui et on peut soit faire soit un projet console, soit un projet librairie, winform, soit un projet wpf.
Dans les 2 premiers, il n'y a pas d'interface graphique, donc je suis sur que ce n'est pas ton type de projet.
Mais les 2 suivants ne fonctionnent pas du tout pareil, donc il est important de savoir
0
publespace Messages postés 31 Date d'inscription samedi 18 août 2007 Statut Membre Dernière intervention 15 mars 2016
13 mars 2016 à 21:53
ok je viens de regarder dans les propriété de ma solution

c'est écris type d'application "application wpf"
0
Whismeril Messages postés 19024 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 18 avril 2024 656
13 mars 2016 à 22:28
Et bien le chant, c'est pas vraiment prévu pour le wpf.

Tu peux te servir d'un Path.
0
publespace Messages postés 31 Date d'inscription samedi 18 août 2007 Statut Membre Dernière intervention 15 mars 2016
13 mars 2016 à 23:05
tu veut dire avec un PathListBox ou un PathListBoxItem

je fait des recherches merci
0
Whismeril Messages postés 19024 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 18 avril 2024 656
13 mars 2016 à 23:13
non non un Path tout court.
J'ai un code au boulot, je tache d'y penser demain

en attendant
https://msdn.microsoft.com/fr-fr/library/system.windows.shapes.path(v=vs.110).aspx
0
Whismeril Messages postés 19024 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 18 avril 2024 656
14 mars 2016 à 11:58
Bonjour

un exmple sans prétentions, je n'ai pas géré les échelle ni le fait que les pixels sont positifs vers le bas.
J'ai cru comprendre dans ton code que tes données sont constistuées d'ordonnées uniquement alors j'ai fait pareil.

Le xaml
<Window x:Class="Tests_WPF.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">
    <Grid Background="Black">
        <Path Name ="Path1" Data="{Binding Path=Data1.Data}" Stroke="Yellow"></Path>
    </Grid>
</Window>


le code behind
          int[] justeDesY = { 2, 4, 1, 8, 7 ,10,30,70,80,100,200};
            IEnumerable<Point> points = justeDesY.Select((d, i) => new Point(i*10, d));//je me sert d'une requete indéxée pour générer les x = index * 10
            IEnumerable<PathSegment> segments = points.Skip(1).Select(p => new LineSegment(p, true));//les segement sont issus de la collection de points sauf le premier

            PathFigure figure = new PathFigure(points.First(), segments, false);//génère la figure en partant du premier point, puis les segments

            PathGeometry courbe = new PathGeometry();//on crée une géométrie
            courbe.Figures = new PathFigureCollection();
            courbe.Figures.Add(figure);//on y ajoute la figure


            Path1.Data = courbe;//on y affecte la géométrie


Le behind est en csharp, il y a des traducteurs en ligne et comme mon internet au boulot ne marche pas bien aujourd'hu je ne l'ai pas fait.

J'ai déà eu bien du mal à ouvrir la discussion.
0
publespace Messages postés 31 Date d'inscription samedi 18 août 2007 Statut Membre Dernière intervention 15 mars 2016
15 mars 2016 à 09:22
bonjour merci pour la réponse et le temps passé





en attendant j'ai trouvé un plan B à mon problème je créé une image dans laquelle je met mon chart et j'affiche cete image dans un control image je posteris le code se soir ou demain. c'est pas la solutin idéale mais sa fonctionne.

j'etudie ton code afin d'integrer directement le chart dans mon peti soft
0
Rejoignez-nous