Hallo miteinander
ich möchte gerne in einem DataGridView in eine ComboBox einbauen. Die ComboBox hat aber in jeder Zeile andere Werte hinterlegt. Wie mache ich das?
Code bis jetzt:
Ich bin mir nicht sicher, ob
Die ComboBox soll eigentlich nur den
EDIT:
ich möchte gerne in einem DataGridView in eine ComboBox einbauen. Die ComboBox hat aber in jeder Zeile andere Werte hinterlegt. Wie mache ich das?
Code bis jetzt:
VB.NET-Quellcode
- Public Class Form1
- Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
- Dim Show1 As New SearchResult With {.Title = "Archer"}
- Show1.Mirrors.Add(New Mirror With {.Hoster = "Hoster1", .URL = "http://hoster1/url"})
- Show1.Mirrors.Add(New Mirror With {.Hoster = "Hoster2", .URL = "http://hoster2/url"})
- Dim Show2 As New SearchResult With {.Title = "Simpsons"}
- Show2.Mirrors.Add(New Mirror With {.Hoster = "Hoster6", .URL = "http://hoster61/url"})
- Show2.Mirrors.Add(New Mirror With {.Hoster = "Hoster9", .URL = "http://hoster9/url"})
- Dim nSearchResults As New List(Of SearchResult)
- nSearchResults.Add(Show1)
- nSearchResults.Add(Show2)
- Dim dtSearchResults As New DataTable
- dtSearchResults.Columns.Add("Serientitel", GetType(String))
- dtSearchResults.Columns.Add("Mirrors", GetType(ComboBox))
- For Each nShow In nSearchResults
- dtSearchResults.Rows.Add(nShow.Title, ?????? ComboBox ??????)
- Next
- Dim bsSearchResults As New BindingSource With {.DataSource = dtSearchResults}
- DataGridView1.DataSource = bsSearchResults
- End Sub
- Public Class SearchResult
- Public Title As String
- Public Mirrors As New List(Of Mirror)
- End Class
- Public Class Mirror
- Public Hoster As String
- Public URL As String
- End Class
- End Class
Ich bin mir nicht sicher, ob
dtSearchResults.Columns.Add("Mirrors", GetType(ComboBox))
überhaupt richtig ist. Hier wird ja die DataTable
definiert...Die ComboBox soll eigentlich nur den
Hoster
anzeigen, der Wert für URL
sollte jedoch ebenfalls hinterlegt sein. Normalerweise würde ich solche ComboBoxen so füllen:EDIT:
DataGridView1
muss übrigens nicht unbedingt über eine BS an die Daten kommen, von mir aus kann man die Zeilen auch einfach manuell einfügen.