Ich hab eine XML Datei in ein Dataset importiert die Auswahl der Datei wird über einen Dateibrowser ermöglicht. Der Pfad und Dateiname wird nun in einer Variable "Path" gespeichert und weiter verwendet.
'Dateibrowser welcher den Dateinamen und Pfad zurückliefert
Dim dlgFileOpen As New OpenFileDialog()
dlgFileOpen.ShowDialog()
Dim path As String = dlgFileOpen.FileName
Dim ds As New DataSet
' use filestream class to read xml content.
Dim streamRead As New System.IO.FileStream("" & path & "", _
System.IO.FileMode.Open)
'Dataset can read content from FileStream.
ds.ReadXml(streamRead)
' Close FileStream object
streamRead.Close()
Im Dataset wurden automatisch 2 Tabellen angelegt eine Parent und eine Child nun war mein Problem, das ich in Abhängigkeit der Auswahl in einer Combobox sowohl die Felder in meinem Dialog ändern wollte, die auf Daten der Parenttabelle zugreifen als auch die Felder die auf die dazugehörigen Einträge aus der Childtabelle zugreifen.
Dank der Unterstützung dieses Forums ließ sich dieses Problem sehr elegant durch den Befehl "Bindingsource" realisieren.
' Eine BindingSource für die Parenttabelle Manufacturer
Dim bsManufacturer As New BindingSource()
bsManufacturer.DataSource = ds.Tables("Manufacturer")
' Eine BindingSource auf den ForeignKey zwischen Manufacturer und Country
Dim bsCountry As New BindingSource()
bsCountry.DataMember = "Manufacturer_Country"
bsCountry.DataSource = bsManufacturer
' Bind data to your control.
ComboBox1.DataSource = bsManufacturer
ComboBox1.DisplayMember = "Customer-ID"
'Datensatz aus der Parenttabelle
TextBox13.DataBindings.Clear()
TextBox13.DataBindings.Add("Text", bsManufacturer, "Customer-ID")
'dazugehöriger Datensatz aus der Childtabelle
TextBox12.DataBindings.Clear()
TextBox12.DataBindings.Add("Text", bsCountry, "ID")
Sollte jemand ein ähnliches Problem haben hoffe ich ihm mit diesem Beitrag einwenig weiterhelfen zu können.
Großes Lob an meine geduldigen Supporter aus diesem Forum
'Dateibrowser welcher den Dateinamen und Pfad zurückliefert
Dim dlgFileOpen As New OpenFileDialog()
dlgFileOpen.ShowDialog()
Dim path As String = dlgFileOpen.FileName
Dim ds As New DataSet
' use filestream class to read xml content.
Dim streamRead As New System.IO.FileStream("" & path & "", _
System.IO.FileMode.Open)
'Dataset can read content from FileStream.
ds.ReadXml(streamRead)
' Close FileStream object
streamRead.Close()
Im Dataset wurden automatisch 2 Tabellen angelegt eine Parent und eine Child nun war mein Problem, das ich in Abhängigkeit der Auswahl in einer Combobox sowohl die Felder in meinem Dialog ändern wollte, die auf Daten der Parenttabelle zugreifen als auch die Felder die auf die dazugehörigen Einträge aus der Childtabelle zugreifen.
Dank der Unterstützung dieses Forums ließ sich dieses Problem sehr elegant durch den Befehl "Bindingsource" realisieren.
' Eine BindingSource für die Parenttabelle Manufacturer
Dim bsManufacturer As New BindingSource()
bsManufacturer.DataSource = ds.Tables("Manufacturer")
' Eine BindingSource auf den ForeignKey zwischen Manufacturer und Country
Dim bsCountry As New BindingSource()
bsCountry.DataMember = "Manufacturer_Country"
bsCountry.DataSource = bsManufacturer
' Bind data to your control.
ComboBox1.DataSource = bsManufacturer
ComboBox1.DisplayMember = "Customer-ID"
'Datensatz aus der Parenttabelle
TextBox13.DataBindings.Clear()
TextBox13.DataBindings.Add("Text", bsManufacturer, "Customer-ID")
'dazugehöriger Datensatz aus der Childtabelle
TextBox12.DataBindings.Clear()
TextBox12.DataBindings.Add("Text", bsCountry, "ID")
Sollte jemand ein ähnliches Problem haben hoffe ich ihm mit diesem Beitrag einwenig weiterhelfen zu können.
Großes Lob an meine geduldigen Supporter aus diesem Forum
Comment