vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Top-Preis! AP-Access-Tools-CD Volume 1  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Zwischenablage nach DataGridView 
Autor: dosman
Datum: 24.06.16 07:44

Hallo zusammen,
ich versuche Daten aus der Zwischenablage in ein DataGridView zu schreiben.

Die Daten kommen so aus der Zwischenablage:
Name
Adresse
PLZ
Tel

In das DataGridView schreibe ich so:

If Clipboard.ContainsText() Then
            DataGridView1.Columns.Clear()
            DataGridView1.Rows.Clear()
 
            Dim c As Char() = {ControlChars.Lf, ControlChars.Tab}
            Dim items As String() = Clipboard.GetText().ToString().Split(c)
            Dim lines As String() = Clipboard.GetText().ToString().Split( _
              ControlChars.Lf)
 
            For i As Integer = 0 To lines.Length - 1
                DataGridView1.Columns.Add(i.ToString(), items(i))
            Next
 
            For i As Integer = 0 To lines.Length - 2
                If i <> 0 Then
                    DataGridView1.Rows.Add(lines(i).Split(ControlChars.Tab))
                End If
            Next
        End If
Leider bekomme ich nicht für jede Zeiel eine Spalte sondern es steht alles in einer Spalte mit 4 Zeilen.

Frage wo ist mein Fehler?

Danke für die Hilfe im Voraus!!
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Zwischenablage nach DataGridView 
Autor: Manfred X
Datum: 24.06.16 09:34

Hallo!

So ganz verstehe ich nicht, was Du erreichen willst.
[I]Leider bekomme ich nicht für jede Zeile eine Spalte,
sondern es steht alles in einer Spalte mit 4 Zeilen.[/I] ????

Vermutlich ....
   If Clipboard.ContainsText() Then
      DataGridView1.Columns.Clear()
      DataGridView1.Rows.Clear()
 
      Dim c As Char() = {ControlChars.Lf, ControlChars.Tab}
      Dim items As String() = Clipboard.GetText().ToString().Split(c)
 
      For i As Integer = 0 To items.Length - 1
          datagridview1.Columns.Add(i.ToString(), items(i))
      Next i
 
      datagridview1.Rows.Add(items)
 
   End If


Beitrag wurde zuletzt am 24.06.16 um 09:38:56 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Zwischenablage nach DataGridView 
Autor: dosman
Datum: 24.06.16 09:44

Hallo Manfred,
danke für deine Antwort, genau das wollte ich machen.

Frage wie krieg ich es hin das nicht jedesmal die Spaltenüberschriften im Grid überschrieben werden?

LG Michi
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Zwischenablage nach DataGridView 
Autor: Manfred X
Datum: 24.06.16 10:14

Die "korrekte" Vorgehensweise wäre ....

1. Du legst fest, wie die Datenstruktur in der Zwischenablage
aussehen muß, damit sie von Deinem Programm verwendet/akzeptiert
werden kann.
Dies betrifft z.B. die Zahl der Spalten und den Datentyp der Spalten.
Des weiteren verwendest Du verschiedene Split-Zeichen (Tab, Lf).
Auch dazu sind geeignete Vorgaben zu machen.

2. Du deklarierst eine "Datatable"-Instanz und richtest ein Spaltenschema
ein - gemäß den in 1. getroffenen Bedingungen.

3. Du erstellst eine Routine, die nach dem Lesen von Text aus
dem Clipboard überprüft, ob der gelesene Inhalt den in 1. definierten
Kriterien entspricht.
(Im Clipboard kann "irgendwas" stehen - also genau prüfen.)

4. Du trägst den gelesenen Inhalt (z.B. nach einem Split) per
"Add"-Methode der Rows-Auflistung als zusätzlichen Datensatz in die
Datatable ein.

5. Diese Datatable wird z.B. per "Bindingsource" an das
DatagridView-Control gebunden.

Probier' mal, wie weit Du kommst.
Im Forum gibt es zahlreiche Beispiele zu diesen Stichworten.

Beitrag wurde zuletzt am 24.06.16 um 10:19:17 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

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

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 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