Texto/waterswea
1. Función del programa: implementar paginación para el repetidor
2. Diseño del formulario:
1. Cree una nueva aplicación web ASP.NET, denominada Repetidor2, y la ruta para guardar es http://192.168.0.1/Repeater2 (Nota: en mi computadora La IP del sitio web es 192.168.0.1 y el directorio de inicio es D:carpeta web) y haga clic en Aceptar.
2. Agregue una tabla con tres filas y una columna al formulario, agregue un control Repetidor a la primera fila de la tabla, agregue dos controles Etiqueta a la segunda fila de la tabla y agregue cuatro botones Botón a la tercera fila del formulario. mesa.
3. Cambie a la ventana de código HTML y agregue el siguiente código entre <asp:Repeater id="Repeater1" runat="server"> y </asp:Repeater>:
<ItemTemplate>
<table id="Table2" style="FONT-SIZE: x-small" width="498">
<tr>
<td><%#DataBinder.Eval(Contenedor,"DataItem.employeeid")%></td>
<td><%#DataBinder.Eval(Contenedor,"DataItem.lastname")%></td>
</tr>
</tabla>
</ItemTemplate>
3. Diseño de código:
Importaciones System.Data.SqlClient
WebForm1 de clase pública
Hereda System.Web.UI.Page
Dim scon como nueva conexión Sql("server=localhost;database=northwind;uid=sa;pwd=123")
Atenuar sDA como SqlDataAdapter
Atenuar ds como conjunto de datos
Dim currentPage As Integer 'Registra en qué página se encuentra actualmente. Dim maxPage As Integer '¿Cuántas páginas hay en total? Const rowCount As Integer = 3 '¿Cuántas filas hay en una página? Dim rowSum As Integer '¿Cuántas filas hay? hay en total
'Código de formulario
omitPrivate Sub Page_Load(ByVal remitente como System.Object, ByVal y como System.EventArgs) Maneja MyBase.Load
si no es Page.IsPostBack Entonces
sDA = New SqlDataAdapter ("seleccione ID de empleado, apellido del orden de los empleados por ID de empleado", scon)
ds = Nuevo conjunto de datos
Intentar
sDA.Fill(ds, "empleados")
'Obtiene el número total de filas RowSum = ds.Tables(0).Rows.Count
Atrapar a ex como excepción
sumafila = 0
End Try
'Si no hay datos, salga del proceso. Si RowSum = 0, entonces salga de Sub
'Calcule el número total de páginas de datos de navegación. Si rowSum Mod rowCount > 0 Entonces
'Si queda resto, suma 1
maxPage = sumafilas contadorfilas + 1
Demás
'Dividimos exactamente maxPage = RowSumrowCount
Finalizar si
página actual = 1
'Llamar al proceso de datos enlazados readpage(currentPage)
Vincular datos()
Etiqueta2.Texto = páginamáx
'Los botones de inicio y página anterior son invisiblesButton1.Visible = False
Botón2.Visible = Falso
Terminar si
End Sub
'Crear un proceso de enlace de datos
SubBindData()
Repetidor1.DataSource = ds
Repetidor1.DataBind()
Etiqueta1.Texto = Página actual
End Sub
'Crear un proceso para completar el conjunto de datos
Subpágina de lectura (ByVal n como entero)
sDA = New SqlDataAdapter ("seleccione ID de empleado, apellido del orden de los empleados por ID de empleado", scon)
ds = Nuevo conjunto de datos
ds.Clear()
sDA.Fill(ds, (n - 1) * rowCount, rowCount, "empleados")
Botón
Finalizar Sub
'Inicio
Subbotón privado1_Click (remitente ByVal como System.Object, ByVal y como System.EventArgs) maneja Button1.Click
currentPage = 1
'Llame al proceso de llenado del conjunto de datos readpage(currentPage)
'Enlazar datosBindData()
'Configura los botones de la página de inicio y de la primera página para que sean invisibles, y muestra los botones de la página siguiente y la última Button1.Visible = False
Botón2.Visible = Falso
Botón3.Visible = Verdadero
Button4.Visible = True
End Sub
'Botón de página anterior
Subbotón privado2_Click (remitente ByVal como System.Object, ByVal y como System.EventArgs) maneja Button2.Click
'Si la página actual es la segunda página, configure los botones de la página de inicio y de la página anterior para que sean invisibles. Si Etiqueta1.Texto > 2 Entonces
Botón3.Visible = Verdadero
Botón4.Visible = Verdadero
Demás
Botón1.Visible = Falso
Botón2.Visible = Falso
Botón3.Visible = Verdadero
Botón4.Visible = Verdadero
Terminar si
PáginaActual = Etiqueta1.Texto - 1
leer página (página actual)
Vincular datos()
Finalizar sub
'Página siguiente
Subbotón privado3_Click (remitente ByVal como System.Object, ByVal y como System.EventArgs) maneja Button3.Click
'Si la página actual es la penúltima página, configure los botones de la última página y de la página siguiente para que sean invisibles. Si Etiqueta1.Texto < Etiqueta2.Texto - 1 Entonces
Botón1.Visible = Verdadero
Botón2.Visible = Verdadero
Demás
Botón1.Visible = Verdadero
Botón2.Visible = Verdadero
Botón3.Visible = Falso
Botón4.Visible = Falso
Terminar si
PáginaActual = Etiqueta1.Texto + 1
leer página (página actual)
Vincular datos()
End Sub
'Botón de última páginaSub botón privado4_Click(ByVal remitente como System.Object, ByVal y como System.EventArgs) Maneja el botón4.Click
'Establece la página actual al número máximo de páginas currentPage = Label2.Text
leer página (página actual)
Vincular datos()
Botón1.Visible = Verdadero
Botón2.Visible = Verdadero
Botón3.Visible = Falso
Botón4.Visible = Falso
Subtítulo final
End Class
es la siguiente: