Guten Tag,
ich möchte mein DataGridView (dgLoeschenTier) mit eine List füllen, welche über das Form / Class "NeuesTier" instanziert wird.
Das funktioniert leider nicht. Ich habe schon fast in jeder Klasse Listen angelegt, über DataGriv-Eigenschaften die Bindingssource auf die Class.Tier bzw. Class.NeuesTier umgestellt. Der letzte Versuch war die manuelle Bindingssource über den Code (siehe unten). Alles ohne Erfolg. Könntet ihr mir bitte helfen? Ich will ja vom Form/Class "TierLoeschen" auf die Liste der Class.NeuesTier zugreifen. Über eine BindingSource soll die Liste immer aktuell sein.... Auch dem INotifyPropertyChanged bin ich nicht abgeneigt, leider kenne ich den aber gar nicht
Thema verschoben. ~Trade
ich möchte mein DataGridView (dgLoeschenTier) mit eine List füllen, welche über das Form / Class "NeuesTier" instanziert wird.
Das funktioniert leider nicht. Ich habe schon fast in jeder Klasse Listen angelegt, über DataGriv-Eigenschaften die Bindingssource auf die Class.Tier bzw. Class.NeuesTier umgestellt. Der letzte Versuch war die manuelle Bindingssource über den Code (siehe unten). Alles ohne Erfolg. Könntet ihr mir bitte helfen? Ich will ja vom Form/Class "TierLoeschen" auf die Liste der Class.NeuesTier zugreifen. Über eine BindingSource soll die Liste immer aktuell sein.... Auch dem INotifyPropertyChanged bin ich nicht abgeneigt, leider kenne ich den aber gar nicht
VB.NET-Quellcode
- Imports OOP3_WindowsForms_1
- Public Class TierLoeschen
- Dim bs As New BindingSource
- Private Sub dgLoeschenTier_SelectionChanged(sender As Object, e As EventArgs) Handles dgLoeschenTier.SelectionChanged
- If (dgLoeschenTier.SelectedRows.Count > 0) Then 'wenn Zeilenanzahl > 0 ist,...
- End If
- End Sub
- Private Sub TierLoeschen_Load(sender As Object, e As EventArgs) Handles MyBase.Load
- dgLoeschenTier.AutoGenerateColumns = False 'Keine zusätzlichen Spalten anlegen
- 'die Propertynamen der dglöschenTier müssen
- End Sub ' mit den Properties aus tier übereinstimmen
- End Class
VB.NET-Quellcode
- Imports OOP3_WindowsForms_1
- Public Class NeuesTier
- Dim elefant As Tier
- Dim pferd As Tier
- Dim fisch As Tier
- Dim adler As Tier
- Dim liTierListe As List(Of Tier) = New List(Of Tier)
- Public Property LiTierListe1 As List(Of Tier)
- Get
- Return liTierListe
- End Get
- Set(value As List(Of Tier))
- liTierListe = value
- End Set
- End Property
- Private Sub btFertig_Click(sender As Object, e As EventArgs) Handles btFertig.Click
- Select Case lbTierwahl.Text.ToLower
- Case "elefant"
- elefant = New Tier()
- elefant.TierName = lbTierwahl.Text.ToLower
- elefant.Laut = txtLaut.Text
- elefant.AnzahlBeine = CType(txtBeine.Text, Int32)
- elefant.SchwanzVorhanden = Convert.ToBoolean(lbSchwanz.Text)
- elefant.Gewicht = VBMath.Rnd * 500
- PictureBox1.Image = Image.FromFile("C:\Users\Angemon\documents\visual studio 2015\Projects\OOP3_WindowsForms_1\OOP3_WindowsForms_1\Resources\elefant.jpg")
- elefant.getInfo()
- liTierListe.Add(elefant)
- Case "pferd"
- pferd = New Tier()
- pferd.TierName = lbTierwahl.Text.ToLower
- pferd.Laut = txtLaut.Text
- pferd.AnzahlBeine = CType(txtBeine.Text, Int32)
- pferd.SchwanzVorhanden = Convert.ToBoolean(lbSchwanz.Text)
- pferd.Gewicht = VBMath.Rnd * 50
- PictureBox1.Image = Image.FromFile("C:\Users\Angemon\documents\visual studio 2015\Projects\OOP3_WindowsForms_1\OOP3_WindowsForms_1\Resources\pferd.jpg")
- pferd.getInfo()
- liTierListe.Add(pferd)
- Case "fisch"
- fisch = New Tier()
- fisch.TierName = lbTierwahl.Text.ToLower
- fisch.Laut = txtLaut.Text
- fisch.AnzahlBeine = CType(txtBeine.Text, Int32)
- fisch.SchwanzVorhanden = Convert.ToBoolean(lbSchwanz.Text)
- fisch.Gewicht = VBMath.Rnd * 5
- PictureBox1.Image = Image.FromFile("C:\Users\Angemon\documents\visual studio 2015\Projects\OOP3_WindowsForms_1\OOP3_WindowsForms_1\Resources\fisch.jpg")
- fisch.getInfo()
- liTierListe.Add(fisch)
- Case "adler"
- adler = New Tier()
- adler.TierName = lbTierwahl.Text.ToLower
- adler.Laut = txtLaut.Text
- adler.AnzahlBeine = CType(txtBeine.Text, Int32)
- adler.SchwanzVorhanden = Convert.ToBoolean(lbSchwanz.Text)
- adler.Gewicht = VBMath.Rnd * 10
- PictureBox1.Image = Image.FromFile("C:\Users\Angemon\documents\visual studio 2015\Projects\OOP3_WindowsForms_1\OOP3_WindowsForms_1\Resources\adler.jpg")
- adler.getInfo()
- liTierListe.Add(adler)
- End Select
- End Sub
- Private Sub NeuesTier_Load(sender As Object, e As EventArgs) Handles MyBase.Load
- End Sub
- End Class
VB.NET-Quellcode
- Imports OOP3_WindowsForms_1
- Public Class Tier
- Private _TierName As String
- Private _anzahlBeine As Integer
- Private _farbe As String
- Private _laut As String
- Private _schwanzVorhanden As Boolean = False
- Private _gewicht As Double
- Public Property AnzahlBeine() As Integer
- Get
- Return _anzahlBeine
- End Get
- Set(value As Integer)
- _anzahlBeine = value
- End Set
- End Property
- Public Property Farbe() As String
- Get
- Return _farbe
- End Get
- Set(value As String)
- _farbe = value
- End Set
- End Property
- Public Property Laut() As String
- Get
- Return _laut
- End Get
- Set(value As String)
- _laut = value
- End Set
- End Property
- Public Property SchwanzVorhanden() As Boolean
- Get
- Return _schwanzVorhanden
- End Get
- Set(value As Boolean)
- _schwanzVorhanden = value
- End Set
- End Property
- Public Property Gewicht() As Double
- Get
- Return _gewicht
- End Get
- Set(value As Double)
- _gewicht = value
- End Set
- End Property
- Public Property TierName() As String
- Get
- Return _TierName
- End Get
- Set(value As String)
- _TierName = value
- End Set
- End Property
- Public Sub getInfo()
- Dim ausgabe As String = ""
- ausgabe += ("Es wurde ein Tier.Object " & TierName.ToUpper & " erzeugt. Die Fellfarbe is " & Farbe & ", das Gewicht " & Math.Round(Gewicht, 1) & " Kg, mit " & _anzahlBeine & " Beine." & " Schwanz vorhanden? " & SchwanzVorhanden)
- MessageBox.Show(ausgabe)
- End Sub
- End Class
Thema verschoben. ~Trade
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Trade“ ()