Guten Tag!
Ich möchte gerne Daten (eigentlich nur vom Typ Double, bzw Integer) in ein Datagridview (DGV) schreiben und abspeichern. Als absoluter Neuling in Sachen Datenbank habe ich mich für die von ErfinderdesRads vorgestellte Methode (Daten speichern und lesen mittels .xml -Datei) entschieden. Mein Code sieht nun so aus:
DGV wird zwar wie gewünscht angezeigt, aber das Speichern gelingt nicht. Es wird zwar bei <save> eine .xml-Datei angelegt, aber die scheint leer zu sein. Der Versuch, die .xml-Datei als Datasource anzugeben, schlug fehl. Da kann ich nicht mal mehr die einzelnen Zeilen im DGV darstellen.
Vermutlich geht das doch alles viel schwieriger, als gedacht.
Wer kann mir bitte ein bisschen auf die Sprünge helfen?
Vielen Dank!
el
Ich möchte gerne Daten (eigentlich nur vom Typ Double, bzw Integer) in ein Datagridview (DGV) schreiben und abspeichern. Als absoluter Neuling in Sachen Datenbank habe ich mich für die von ErfinderdesRads vorgestellte Methode (Daten speichern und lesen mittels .xml -Datei) entschieden. Mein Code sieht nun so aus:
VB.NET-Quellcode
- Option Strict On
- Imports System.IO
- Public Class Form1
- Private _Datafile As New FileInfo("c:\users\ebi\Desktop\Dataset1.xml")
- Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
- ' DGV1.DataSource = "c:\users\ebi\Desktop\Dataset1.xml"
- DGV1.Columns.Add("cJahr", "Jahr")
- DGV1.Columns.Add("cGas", "Gas")
- DGV1.Columns.Add("cStromG", "Strom gesamt")
- DGV1.Columns.Add("cStromHT", "Strom HT")
- DGV1.Columns.Add("cStromNT", "Strom NT")
- DGV1.Columns.Add("cWasserG", "Wasser gesamt")
- DGV1.Columns.Add("cWasserHaus", "Wasser Haus")
- DGV1.Columns.Add("cWasserGarten", "Wasser Garten")
- ' Breite einstellen
- DGV1.Width = 85 * (DGV1.Columns.Count)
- DGV1.Height = 600
- DGV1.Columns("cJahr").Width = 65
- DGV1.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
- DGV1.Columns("cJahr").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
- For i = 1 To DGV1.Columns.Count - 1
- DGV1.Columns(i).Width = 60
- DGV1.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
- DGV1.Columns(i).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
- Next
- For i = 0 To 10
- Dim Jahr As Integer = 1985 + i
- ' DGV1.Rows.Add()
- DGV1.Rows.Add(Jahr.ToString)
- Next
- End Sub
- Private Sub MenuStrip1_MenuClicked(ByVal Sender As Object, ByVal e As EventArgs) _
- Handles SaveToolStripMenuItem.Click, ReloadToolStripMenuItem.Click
- Select Case True
- Case Sender Is SaveToolStripMenuItem
- Save()
- Case Sender Is ReloadToolStripMenuItem
- Reload()
- End Select
- End Sub
- Private Sub Reload()
- DataSet1.Clear()
- If _Datafile.Exists Then
- Console.Beep(800, 200)
- DataSet1.ReadXml(_Datafile.FullName)
- End If
- End Sub
- Private Sub Save()
- Console.Beep(400, 200)
- Me.Validate()
- DataSet1.WriteXml(_Datafile.FullName)
- End Sub
- End Class
DGV wird zwar wie gewünscht angezeigt, aber das Speichern gelingt nicht. Es wird zwar bei <save> eine .xml-Datei angelegt, aber die scheint leer zu sein. Der Versuch, die .xml-Datei als Datasource anzugeben, schlug fehl. Da kann ich nicht mal mehr die einzelnen Zeilen im DGV darstellen.
Vermutlich geht das doch alles viel schwieriger, als gedacht.
Wer kann mir bitte ein bisschen auf die Sprünge helfen?
Vielen Dank!
el