El Control DataRepeater en VB.NET para las aplicaciones Web y en otros lenguajes ha causado controversia por que es muy bueno, a todo el mundo le gusta utilizarlo, solo tenia un pequeño problema, se necesita una conexión a datos en VB.Net para poder utilizarlo, la idea del control Según Microsoft es hacerle la vida mas facil a los programadores dejando que solo se arrastre los elementos como las cajasde testo y botones y demas controles para que pueda funcionar tipo DataGridView pero esto ha sido un problema para aquellos programadores como yo que ya están acostumbrados ha hacer sus conexiones por código y poder tener un poco mas de velocidad en el ambiente gráfico y otros beneficios.
Mi intención no es decirles para qué sirve el contro len sí para los que lo están buscando saben lo poderoso que es y la vistosidad que se obtiene al presentar una lista, los datos, etc, etc, etc.
Bueno como cargar los datos.
Primero consideremos que este control solo funciona enlazado a datos por lo tanto lo que tenemos que hacer es un datatable por código para poder tener los datos y presentarlos.
Necesitan en un formulario un Control DataRepeater, un Label dentro del Contro DataRepeater
Public Class Form1
Dim dt As New DataTable
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
CargarDT()
End Sub
Private Sub CargarDT()
'Aqui vamos ha hacer espacio para 10 Rows o Filas
'Solo Necesitamos un Campo para poder obtener las filas que necesitamos
For n As Integer = 0 To 9
Dim dr1 As DataRow = dt.NewRow
dr1("Id") = n
dt.Rows.Add(dr1)
dt.AcceptChanges()
Next
'Aqui con un simple for cargamos los datos que queremos a nuestro label
'El cual se repetira en 10 diferentes controles
For m As Integer = 0 To 9
DataRepeater1.Controls(m).Controls.Item("Label1").Text = "Producto No. " & m
Next
End Sub
Private Sub DataRepeater1_CurrentItemIndexChanged(sender As Object, e As EventArgs) Handles DataRepeater1.CurrentItemIndexChanged
'Con esto podemos rescatar los datos con un boton o simple y sencillamente darle click a una sección
'DataRepeater1.CurrentItem obtiene el ItemIndex del control seleccionado.
Debug.Print(DataRepeater1.CurrentItem.Controls.Item("Label1").Text)
End Sub
End Class
Espero les alla servido, me despido de ustede.
