| |

ADO.NET / DatenbankenDatatable kopieren - ganz simpel? | |  | Autor: Maclane | Datum: 17.06.07 01:47 |
| Hallo
Ich hab die Suchfunktion benutzt, es wird immer von der Copy-Methode gesprochen, aber wenn ich die anwende, funktioniert das nicht so wie ich will.
Ich versuche gerade folgendes:
Ich habe sechs Radiobuttons, sechs DataTables, sechs BindingSources und ein Datagridview. Je nachdem welcher Radiobutton ausgewählt ist, ist das DGV an eine bestimmte BindingSource gebunden, welche wiederum an eine der Tabellen gebunden ist. (Weiß nicht, ob das richtig ist, aber so funktioniert es erstmal ausgezeichnet)
Public Class HauptForm
...
Dim trade1dt As DataTable = maicdbDataSet.Tables.Add("trade1dt")
Dim trade2dt As DataTable = maicdbDataSet.Tables.Add("trade2dt")
Dim trade3dt As DataTable = maicdbDataSet.Tables.Add("trade3dt")
Dim trade4dt As DataTable = maicdbDataSet.Tables.Add("trade4dt")
Dim trade5dt As DataTable = maicdbDataSet.Tables.Add("trade5dt")
Dim trade6dt As DataTable = maicdbDataSet.Tables.Add("trade6dt")
Dim tradecdt As DataTable = maicdbDataSet.Tables.Add("tradecdt")
Dim tradedataset As DataSet
Dim tradedataadapter As OleDb.OleDbDataAdapter
Private trade1bs As New BindingSource()
Private trade2bs As New BindingSource()
Private trade3bs As New BindingSource()
Private trade4bs As New BindingSource()
Private trade5bs As New BindingSource()
Private trade6bs As New BindingSource()
....
Public Sub slot()
...
Dim zeilen As Integer
ReDim allgcexp(250)
ReDim allgcemb(250)
If RadioButton1.Checked = True Then
zeilen = trade1dt.Rows.Count
If zeilen = 0 Then
Tradeform.Handeldgv.DataSource = trade1bs
GetData("select * from TradeOrig")
tradedataadapter.Fill(trade1dt)
trade1bs.DataSource = trade1dt
Tradeform.Handeldgv.AutoResizeColumns( _
DataGridViewAutoSizeColumnsMode.AllCells)
Else
Tradeform.Handeldgv.DataSource = trade1bs
End If
allgc = allg1
allgcexp = allg1exp
allgcemb = allg1emb
ElseIf RadioButton2.Checked = True Then
...usw... Nun will ich gerne die Daten von einer Tabelle zur anderen kopieren und das DGV soll das auch mitkriegen:
Private Sub AllgCopy_MouseClick(ByVal sender As System.Object, ByVal e As _
System.Windows.Forms.MouseEventArgs) Handles AllgCopy.MouseClick
If RadioButton1.Checked = True Then
tradecdt = trade1dt.Copy
ElseIf RadioButton2.Checked = True Then
tradecdt = trade2dt.Copy
...usw...
Private Sub AllgPaste_MouseClick(ByVal sender As System.Object, ByVal e As _
System.Windows.Forms.MouseEventArgs) Handles AllgPaste.MouseClick
If RadioButton1.Checked = True Then
trade1bs.DataSource = trade1dt
trade1dt = tradecdt.Copy
ElseIf RadioButton2.Checked = True Then
trade2bs.DataSource = trade2dt
trade2dt = tradecdt.Copy
...usw...
slot()
End Sub Die Tabelle "tradecdt" nutze ich dabei als eine Art Zwischenablage. Das Kopieren und Einfügen funktioniert auch, aber nur wenn ich die Tabelle, wo ich das reinkopieren will schonmal aufgerufen habe. Wenn ich das nicht mache, ist die Tabelle wohl scheinbar noch leer (zeilen = 0), weshalb sie mit den Standardwerten aus der Access-DB gefüllt wird.
Aber wie kann das sein? Wenn die Daten aus der "Zwischentabelle" in die jeweilige Tabelle kopiert werden, dann kann doch "zeilen" nicht "0" sein.
Hab also folgendes:
radiobutton1 auswählen -> daten eintragen -> radiobutton2 -> daten eintragen -> radiobutton1 auswählen -> Kopieren klicken -> radiobutton2 auswählen -> einfügen klicken
-> funktioniert
aber
radiobutton1 auswählen -> Daten eintragen -> Kopieren klicken -> radiobutton2 auswählen -> einfügen klicken
-> funkioniert nicht, Standardwerte werden mir angezeigt
Wo sitzt der Fehlerteufel? |  |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
vb@rchiv CD Vol.6 vb@rchiv Vol.6
Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
Online-Update-Funktion Entwickler-Vollversionen u.v.m.Jetzt zugreifen Tipp des Monats Oktober 2025 Matthias KozlowskiUmlaute konvertierenErsetzt die Umlaute in einer Zeichenkette durch die entsprechenden Doppelbuchstaben (aus ä wird ae, usw.) sevOutBar 4.0 
Vertikale Menüleisten á la Outlook
Erstellen von Outlook ähnlichen Benutzer- interfaces - mit beliebig vielen Gruppen und Symboleinträgen. Moderner OfficeXP-Style mit Farbverläufen, Balloon-Tips, u.v.m. Weitere Infos
|
|
|
Copyright ©2000-2025 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|