none
Aparecen blancos entre los items de listview paginado al visualizarlo RRS feed

  • Pregunta

  • Hola, estoy paginando un listview y al ejecutarlo aparecen espacios en blanco y los items corridos hacia abajo hasta completar el page size indicado. Respeta el GroupItemCount. Pero en forma alterna aparecen en distintas páginas estos saltos. Como lo soluciono.


    • Editado clape_eoya sábado, 5 de septiembre de 2020 0:50
    sábado, 5 de septiembre de 2020 0:07

Todas las respuestas

  • Hola clape_eoya, 

      

    Gracias por levantar tu consulta en los foros de MSDN. Podrias adjuntar el codigo y una foto para que la comunidad de foros te pueda ayudar mejor. tambien puedes probar con este codigo que elimina items en blanco, 

     For x = ListView1.Items.Count - 1 To 0 Step -1
            For y = ListView1.Items(x).SubItems.Count - 1 To 0 Step -1
                If ListView1.Items(x).SubItems(y).Text = "" Then
                    ListView1.Items(x).Remove()
                    Exit For
                End If
            Next
        Next

     

     Andres Aguilar

     ____________________________ 

      

    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde.

    Si tiene algún cumplido o reclamo sobre el soporte de MSDN sientase en la libertad de contactar  MSDNFSF@microsoft.com. 

    lunes, 7 de septiembre de 2020 18:05
    Moderador
  • Gracias. Probaré tus indicaciones y te cuento.

    Hola. Intenté con tu opción pero no hubo caso sigue sin responder me siguen quedando esos saltos al visualizarlo.

    El código que estoy usando para la lectura y visualización es el siguiente:

    Pagina .aspx

     <asp:ListView ID="ListView1" runat="server" DataSourceID="SqlDataSource1" GroupItemCount="4" OnPagePropertiesChanging="ListView1_PagePropertiesChanging">
                  <GroupTemplate>
                      <asp:PlaceHolder runat="server" ID="itemPlaceholder" />
                  </GroupTemplate>
                  <LayoutTemplate>
           <div class="col-md-11 text-right">
            <asp:DataPager runat="server" ID="BeforeListDataPager" PageSize="24">
                <Fields>
                  <asp:NextPreviousPagerField ButtonType="Image"
                       ShowFirstPageButton="true"
                       ShowNextPageButton="false"
                       ShowPreviousPageButton="false"
                       FirstPageImageUrl="~/imnews/prev.png" />
                  <asp:NumericPagerField ButtonCount="10" RenderNonBreakingSpacesBetweenControls="true" CurrentPageLabelCssClass="h4" NumericButtonCssClass="hyper" />
                  <asp:NextPreviousPagerField ButtonType="Image"
                       ShowLastPageButton="true"
                       ShowNextPageButton="false"
                       ShowPreviousPageButton="false"
                       LastPageImageUrl="~/imnews/next.png" />
                </Fields>
              </asp:DataPager>
            </div<
                     <asp:PlaceHolder runat="server" ID="groupPlaceHolder" />
                   </LayoutTemplate>
                   <ItemTemplate>
                       <div class="col-md-3 col-sm-6 text-left">
                                <asp:HiddenField ID="Hiddencodbar" runat="server" Value='<%#"imlib/" & Eval("cod_bar") & ".jpg"%>' />
                                <asp:ImageButton ID="Image1" runat="server" CssClass="img-responsive3" ImageUrl="ListView1_ItemDataBound()" PostBackUrl='<%#"Detalles.aspx?cod_lib=" & Eval("cod_lib")%>' /><asp:HyperLink ID="info" CssClass="img-responsive4 ver_mas" runat="server" NavigateUrl='<%#Eval("cod_lib", "Detalles.aspx?cod_lib={0}")%>' ImageUrl="Garabombo/Images/MASINFO.png"></asp:HyperLink>
                                <br />
                                <asp:HyperLink ID="HplKTitulo" runat="server" CssClass="titulo text-uppercase" Text='<%# Eval("Titulo")%>' NavigateUrl='<%#"Detalles.aspx?cod_lib=" & Eval("cod_lib")%>'></asp:HyperLink>
                                <br />
                                <asp:Label ID="Label1" runat="server" CssClass="contenidostxt" Text='<%# Eval("Autor")%>'></asp:Label>
                                <br />
                                <asp:Label ID="Labelprec" runat="server" CssClass="hyper" Text='<%# "Ars" & Eval("prec_monpe", "{0:C}")%>'></asp:Label>
                                <br />
                                <br />
                          </div>
                  </ItemTemplate>
                  <EmptyItemTemplate>

                  </EmptyItemTemplate>
                  <EmptyDataTemplate>
                     <h3>No se encuentran datos en esta selección</h3>
                  </EmptyDataTemplate>
            </asp:ListView>
     <div class="col-md-11 text-right">
          <asp:DataPager runat="server" ID="AfterListDataPager"
              PagedControlID="ListView1" PageSize="12">
              <Fields>
                  <asp:NextPreviousPagerField ButtonType="Image"
                      ShowFirstPageButton="true"
                      ShowNextPageButton="false"
                      ShowPreviousPageButton="false"
                      FirstPageImageUrl="~/imnews/prev.png" />
                  <asp:NumericPagerField ButtonCount="10" RenderNonBreakingSpacesBetweenControls="true" CurrentPageLabelCssClass="h4" NumericButtonCssClass="hyper" />
                  <asp:NextPreviousPagerField ButtonType="Image"
                      ShowLastPageButton="true"
                      ShowNextPageButton="false"
                      ShowPreviousPageButton="false"
                      LastPageImageUrl="~/imnews/next.png" />
              </Fields>
          </asp:DataPager>

    y la aspx.vb

    Protected Sub ListView1_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.ListViewItemEventArgs) Handles ListView1.ItemDataBound

            For x = ListView1.Items.Count - 1 To 0 Step -1
                If x.ToString = " " Then
                    ListView1.Items(x).ToString.Remove(x)
                    Exit For
                End If
            Next

            Dim ruta As String = CType(e.Item.FindControl("Hiddencodbar"), HiddenField).Value
            Dim nosta As String = "imlib/sintapa.png"
            Dim stFoto As String = (System.IO.Path.GetFileName(ruta))
            Dim boolFoto As Boolean = (System.IO.File.Exists("d:\websites\garabombo.com.ar\Home\public_html\imlib\" & stFoto))
            'CType(e.Item.FindControl("Labelcodbar"), Label).Text = stFoto
            If boolFoto = True Then
                CType(e.Item.FindControl("Image1"), ImageButton).ImageUrl = ruta
            Else
                CType(e.Item.FindControl("Image1"), ImageButton).ImageUrl = nosta
            End If

        End Sub

        Protected Sub ListView1_PagePropertiesChanging(sender As Object, e As System.Web.UI.WebControls.PagePropertiesChangingEventArgs) Handles ListView1.PagePropertiesChanging
            BeforeListDataPager.SetPageProperties(e.StartRowIndex, e.MaximumRows, False)
            AfterListDataPager.SetPageProperties(e.StartRowIndex, e.MaximumRows, False)
            ListView1.DataBind()
            BeforeListDataPager.DataBind()
            AfterListDataPager.DataBind()
        End Sub

    • Editado clape_eoya miércoles, 9 de septiembre de 2020 22:29
    martes, 8 de septiembre de 2020 2:46
  • Gracias. Probaré tus indicaciones y te cuento.

    Hola. Intenté con tu opción pero no hubo caso sigue sin responder me siguen quedando esos saltos al visualizarlo.

    El código que estoy usando para la lectura y visualización es el siguiente:

    Pagina .aspx

     <asp:ListView ID="ListView1" runat="server" DataSourceID="SqlDataSource1" GroupItemCount="4" OnPagePropertiesChanging="ListView1_PagePropertiesChanging">
                  <GroupTemplate>
                      <asp:PlaceHolder runat="server" ID="itemPlaceholder" />
                  </GroupTemplate>
                  <LayoutTemplate>
           <div class="col-md-11 text-right">
            <asp:DataPager runat="server" ID="BeforeListDataPager" PageSize="24">
                <Fields>
                  <asp:NextPreviousPagerField ButtonType="Image"
                       ShowFirstPageButton="true"
                       ShowNextPageButton="false"
                       ShowPreviousPageButton="false"
                       FirstPageImageUrl="~/imnews/prev.png" />
                  <asp:NumericPagerField ButtonCount="10" RenderNonBreakingSpacesBetweenControls="true" CurrentPageLabelCssClass="h4" NumericButtonCssClass="hyper" />
                  <asp:NextPreviousPagerField ButtonType="Image"
                       ShowLastPageButton="true"
                       ShowNextPageButton="false"
                       ShowPreviousPageButton="false"
                       LastPageImageUrl="~/imnews/next.png" />
                </Fields>
              </asp:DataPager>
            </div<
                     <asp:PlaceHolder runat="server" ID="groupPlaceHolder" />
                   </LayoutTemplate>
                   <ItemTemplate>
                       <div class="col-md-3 col-sm-6 text-left">
                                <asp:HiddenField ID="Hiddencodbar" runat="server" Value='<%#"imlib/" & Eval("cod_bar") & ".jpg"%>' />
                                <asp:ImageButton ID="Image1" runat="server" CssClass="img-responsive3" ImageUrl="ListView1_ItemDataBound()" PostBackUrl='<%#"Detalles.aspx?cod_lib=" & Eval("cod_lib")%>' /><asp:HyperLink ID="info" CssClass="img-responsive4 ver_mas" runat="server" NavigateUrl='<%#Eval("cod_lib", "Detalles.aspx?cod_lib={0}")%>' ImageUrl="Garabombo/Images/MASINFO.png"></asp:HyperLink>
                                <br />
                                <asp:HyperLink ID="HplKTitulo" runat="server" CssClass="titulo text-uppercase" Text='<%# Eval("Titulo")%>' NavigateUrl='<%#"Detalles.aspx?cod_lib=" & Eval("cod_lib")%>'></asp:HyperLink>
                                <br />
                                <asp:Label ID="Label1" runat="server" CssClass="contenidostxt" Text='<%# Eval("Autor")%>'></asp:Label>
                                <br />
                                <asp:Label ID="Labelprec" runat="server" CssClass="hyper" Text='<%# "Ars" & Eval("prec_monpe", "{0:C}")%>'></asp:Label>
                                <br />
                                <br />
                          </div>
                  </ItemTemplate>
                  <EmptyItemTemplate>

                  </EmptyItemTemplate>
                  <EmptyDataTemplate>
                     <h3>No se encuentran datos en esta selección</h3>
                  </EmptyDataTemplate>
            </asp:ListView>
     <div class="col-md-11 text-right">
          <asp:DataPager runat="server" ID="AfterListDataPager"
              PagedControlID="ListView1" PageSize="12">
              <Fields>
                  <asp:NextPreviousPagerField ButtonType="Image"
                      ShowFirstPageButton="true"
                      ShowNextPageButton="false"
                      ShowPreviousPageButton="false"
                      FirstPageImageUrl="~/imnews/prev.png" />
                  <asp:NumericPagerField ButtonCount="10" RenderNonBreakingSpacesBetweenControls="true" CurrentPageLabelCssClass="h4" NumericButtonCssClass="hyper" />
                  <asp:NextPreviousPagerField ButtonType="Image"
                      ShowLastPageButton="true"
                      ShowNextPageButton="false"
                      ShowPreviousPageButton="false"
                      LastPageImageUrl="~/imnews/next.png" />
              </Fields>
          </asp:DataPager>

    y la aspx.vb

    Protected Sub ListView1_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.ListViewItemEventArgs) Handles ListView1.ItemDataBound

            For x = ListView1.Items.Count - 1 To 0 Step -1
                If x.ToString = " " Then
                    ListView1.Items(x).ToString.Remove(x)
                    Exit For
                End If
            Next

            Dim ruta As String = CType(e.Item.FindControl("Hiddencodbar"), HiddenField).Value
            Dim nosta As String = "imlib/sintapa.png"
            Dim stFoto As String = (System.IO.Path.GetFileName(ruta))
            Dim boolFoto As Boolean = (System.IO.File.Exists("d:\websites\garabombo.com.ar\Home\public_html\imlib\" & stFoto))
            'CType(e.Item.FindControl("Labelcodbar"), Label).Text = stFoto
            If boolFoto = True Then
                CType(e.Item.FindControl("Image1"), ImageButton).ImageUrl = ruta
            Else
                CType(e.Item.FindControl("Image1"), ImageButton).ImageUrl = nosta
            End If

        End Sub

        Protected Sub ListView1_PagePropertiesChanging(sender As Object, e As System.Web.UI.WebControls.PagePropertiesChangingEventArgs) Handles ListView1.PagePropertiesChanging
            BeforeListDataPager.SetPageProperties(e.StartRowIndex, e.MaximumRows, False)
            AfterListDataPager.SetPageProperties(e.StartRowIndex, e.MaximumRows, False)
            ListView1.DataBind()
            BeforeListDataPager.DataBind()
            AfterListDataPager.DataBind()
        End Sub


    lunes, 14 de septiembre de 2020 22:32