Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
MS Chart Darstellung zeigt immer Balkendiagramme an, trotz Fastline Einstellung
mpeter
myCSharp.de - Member



Dabei seit:
Beiträge: 27

Themenstarter:

MS Chart Darstellung zeigt immer Balkendiagramme an, trotz Fastline Einstellung

beantworten | zitieren | melden

Hallo,

ich habe eine kleines Problem wo ich eure Unterstützung brauche.
Ich habe eine MS Access DB aus der ich Daten ziehe um diese in MS Cart auszuwerten.

hier mein Code:

Formular wir initalisiert mit:


 OleDbConnection con = new OleDbConnection();
        OleDbCommand cmd = new OleDbCommand();
        // OleDbDataReader reader;
        ArrayList pnummer = new ArrayList();





hier nun meine Abfrage für MS Chart:



            string fileNameString = "H:\\datenbanken\\fitness.accdb";
            string myConnectionString = "PROVIDER=Microsoft.ACE.OLEDB.12.0;Data Source=" + fileNameString;
            string mySelectQuery = "SELECT st_Datum,ge_gewicht,differenz FROM gewicht;";
            OleDbConnection myConnection = new OleDbConnection(myConnectionString);
            OleDbCommand myCommand = new OleDbCommand(mySelectQuery, myConnection);
            myCommand.Connection.Open();
            OleDbDataReader myReader = myCommand.ExecuteReader(CommandBehavior.CloseConnection);
            chart1.DataBindTable(myReader, "st_Datum");
            

            myConnection.Close();

            var series = new Series("gewicht");//Serie anlegen und Namen vergeben
            series.XValueType = ChartValueType.Date;
            series.XValueMember = "st_Datum";//Spalte aus der Tabelle abrufen, die die X-Werte darstellt
            series.YValueType = ChartValueType.Int32;
            series.YValueMembers = "ge_gewicht";//Spalte aus der Tabelle abrufen, die die Y-Werte darstellt
            series.ChartType = SeriesChartType.FastLine;//Diagrammtyp

mein Problem ist nun das ich nichts richtig einstellen kann als Typ habe ich Fastline angegeben aber ich bekomme trotzdem immer Balken angezeigt.

Wer könnte mich unterstützen oder mir sagen wo ich ein gutes howto finde zum einarbeiten.

Besten Dank

Moderationshinweis von Coffeebean (24.09.2015 - 13:15:16):

Ich habe mal den Titel editiert. Bitte beachte [Hinweis] Wie poste ich richtig? Punkt 3. Wenn du einen besseren Vorschlag hast, dann editier ihn nochmal. Kein Suchender wird wissen, was mit dem Titel "Hilfe bei MS Chart" gemeint ist, wenn er den Thread in der Suche findet. Dein Problem hat mit der Darstellung des Diagramms zu tun. Das sollte im Titel auch klar werden.

private Nachricht | Beiträge des Benutzers
Neidhard
myCSharp.de - Member



Dabei seit:
Beiträge: 140

beantworten | zitieren | melden

Ich vermisse die Zuweisung der Serie zum Chart. Hast du das erledigt?

chart1.Series.Add(series);
private Nachricht | Beiträge des Benutzers
mpeter
myCSharp.de - Member



Dabei seit:
Beiträge: 27

Themenstarter:

beantworten | zitieren | melden

wenn ich das mache bekomme ich immer wieder diese Fehlermeldung:
Fehler
Schweregrad Code Beschreibung Projekt Datei Zeile
Fehler CS1503 Argument "1": Konvertierung von "System.Web.UI.DataVisualization.Charting.Series" in "string" nicht möglich. fitnessapllikation H:\Projects\fitnessapllikation\fitnessapllikation\frmAusGewicht.cs 52


hier meine using Anweisungen kann es sein das ich da noch einen Fehler habe:


using System;
using System.Collections;
using System.Data.OleDb;
using System.Windows.Forms;
using System.Data;
using System.Web.UI.DataVisualization.Charting;
using Charting = System.Web.UI.DataVisualization.Charting;

Moderationshinweis von Coffeebean (25.09.2015 - 07:17:51):

Bitte benutze die richtigen Code-Tags [Hinweis] Wie poste ich richtig? Punkt 6

private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 16234

beantworten | zitieren | melden

Kein Mensch hier weiß, was bei Dir Zeile 52 ist.
Ansonsten solltest Du so einen Fehler eigentlich prima alleine lösen können.

Edit: siehe Ezios Kommentar drunter.
- performance is a feature -

Microsoft MVP - @Website - @blog - @AzureStuttgart - github.com/BenjaminAbt
private Nachricht | Beiträge des Benutzers
Ezio
myCSharp.de - Member

Avatar #avatar-3575.png


Dabei seit:
Beiträge: 196

beantworten | zitieren | melden

Hallo mpeter,

du baust eine WinForms-Anwendung und nutzt das Standard WinForms chart-Control?
In dem Falle wäre die Series aus dem falschen Namespace.
Die müsste aus System.Windows.Forms.DataVisualization.Charting kommen.
[offtopic]An deiner Stelle würde ich das VS auf Englisch stellen, damit du die englischen Fehler bekommst. Da findet sich mehr und du brauchst nicht übersetzen.[/offtopic]
Ezio
private Nachricht | Beiträge des Benutzers
mpeter
myCSharp.de - Member



Dabei seit:
Beiträge: 27

Themenstarter:

beantworten | zitieren | melden

Hallo,

danke für eure Unterstützung.

ich habe es jetzt so gelöst das er einwandfrei duchläuft:

using:


using System;
using System.Collections;
using System.Data.OleDb;
using System.Windows.Forms;
using System.Data;
//using System.Web.UI.DataVisualization.Charting;
using Charting = System.Web.UI.DataVisualization.Charting;
using System.Windows.Forms.DataVisualization.Charting;

nadem ich diese Zeile

using System.Web.UI.DataVisualization.Charting; 

auskommetiert habe konnte ich


 var series1 = new Series("gewicht");//Serie anlegen und Namen vergeben
            chart1.Series.Add(series1);
            series1.XValueType = ChartValueType.Date;
            series1.XValueMember = "st_Datum";//Spalte aus der Tabelle abrufen, die die X-Werte darstellt
            series1.YValueType = ChartValueType.Int32;
            series1.YValueMembers = "ge_gewicht";//Spalte aus der Tabelle abrufen, die die Y-Werte darstellt
            series1.ChartType = SeriesChartType.Line;//Diagrammtyp

Add Series einwandfrei anwenden das Problem ist nur das er immer noch nur Balken bringt und keine Linien egal was ich unter SeriesChartType einstelle es bleibt immer die Balken-
private Nachricht | Beiträge des Benutzers
p!lle
myCSharp.de - Member

Avatar #avatar-3556.jpg


Dabei seit:
Beiträge: 1053

beantworten | zitieren | melden

Von welchem Typ ist 'chart1'?

Du hast nämlich noch ein falsches using drin (das kann komplett raus):

using Charting = System.Web.UI.DataVisualization.Charting;
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von p!lle am .
private Nachricht | Beiträge des Benutzers
mpeter
myCSharp.de - Member



Dabei seit:
Beiträge: 27

Themenstarter:

beantworten | zitieren | melden

Hallo,

das habe ich jetzt gemacht aber leider brachte das auch keinen Erfolg, es bleiben immer noch Balken
private Nachricht | Beiträge des Benutzers