Quantcast
Channel: Windows Forms Data Controls and Databinding forum
Viewing all articles
Browse latest Browse all 2535

WinForms Binding a DataRepeater

$
0
0

VB.NET 4.5

Similar to this post: http://social.msdn.microsoft.com/Forums/windows/en-US/f54572ad-4905-4359-82cf-a509cb428a59/databound-textbox-vbnet?forum=winformsdatacontrols

But for some strange reason my data does not appear in my control. Is it possible to use a generic list as a data source?

I have a simple form with a binding navigator and datarepeater control that contains a textbox inside it.

Public Class Form1

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Dim Data As New List(Of Test)

        Dim item As Test
        item = New Test
        item.Type = "Business"
        item.Params = "Pizza, Regina"

        Dim tmp1 As New List(Of Listing)
        tmp1.Add(New Listing With {.ListingID = "004432", .Name = "Pizza Hut"})
        tmp1.Add(New Listing With {.ListingID = "024235", .Name = "Houston Pizza"})
        item.Listings.AddRange(tmp1)

        Data.Add(item)

        item = New Test
        item.Type = "Business"
        item.Params = "Lawyers, Regina"

        Dim tmp2 As New List(Of Listing)
        tmp2.Add(New Listing With {.ListingID = "004432", .Name = "Pizza Hut"})
        tmp2.Add(New Listing With {.ListingID = "024235", .Name = "Houston Pizza"})
        item.Listings.AddRange(tmp2)

        Data.Add(item)

        Dim bs As New BindingSource
        bs.DataSource = Data

        BindingNavigator1.BindingSource = bs

        DataRepeater1.DataSource = bs

        TextBox1.DataBindings.Add("Text", bs, "Type")
    End Sub
End Class

Public Class Test
    Public Property Type As String
    Public Property Params As String
    Public Property Listings As List(Of Listing)

    Public Sub New()
        Listings = New List(Of Listing)
    End Sub
End Class


Viewing all articles
Browse latest Browse all 2535

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>