VB.NET Datagridview einer Klasse im Form anzeigen

Ein in einer „allgemeinen“ Klasse erzeugtes Datagridview soll in mehreren Formularen angezeigt werden. Z.B.:

Class XYZ
Dim DGV As New DataGridView
Sub ABC()
DGV.Columns.Add(„SpNr“, „Nr“)
DGV.Columns.Add(„SpNN“, „NName“)
end sub
end class

'Wie kann man im Formular F_1 DGV anzeigen ?
Public Class F_Kunden
end class

Vielen Dank an alle Helfer,
PCFJKG

Hallo PCFJKG,

Gewöhnlich löst man sowas eigentlich über DataTable, die man in den Datagridviews der verschiedenen Formen anzeigt.

Du kannst aber ein erzeugtes Datagridview während der Laufzeit einbetten, indem du es als Control einem übergeordneten Element, meist der Form, zuordnest:

Public Class Form1
 Private Sub Form1\_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
 Dim li As New XYZ
 Me.Controls.Add(li.ABC())
 End Sub
End Class
Class XYZ
 Public DGV As New DataGridView
 Function ABC()
 DGV.Columns.Add("SpNr", "Nr")
 DGV.Columns.Add("SpNN", "NName")
 Return DGV
 End Function
End Class

Bedenke dabei auch, dass du Top, Left, Height und Witdth setzen solltest, damit man etwas sieht.

mit freundlichen Grüßen
Julian

Hallo,

ich habe hier jetzt kein Visual Studio installiert, deshalb aus dem Gedächtnis heraus:
Du machst das DGV in der Klasse XYZ Public.
In der Form instanzierst Du die Klasse XYZ:
Private MyXYZ As New XYZ
Dann montierst Du das DGV auf die Form:
Me.Controls.Add(MyXYZ.DGV)
Fertig.

Müsste eigentlich so funktionieren. Ich kann’s, wie oben erwähnt, im Moment nicht ausprobieren.
Gruß
Thomas

Tut mir leid, ich habe keine Erfahrung in Datagridview.

Sorry ich weiss es auch nicht, ich habe inzwischen meine Fähigkeiten hier verändert.
WK