This is a migrated thread and some comments may be shown as answers.

[Solved] Paging not working

9 Answers 240 Views
Grid
This is a migrated thread and some comments may be shown as answers.
jincy
Top achievements
Rank 1
jincy asked on 31 Mar 2008, 06:27 AM
Hi,
I am using the Grid in RadControls 'Prometheus' for ASPNET Q3 2007. I am using hierarchical grid structure. My issue is that paging is not working for the grid. I gave allowpaging as true and gave page size also. But when I click to see the next page grid is disappearing and a blank page is coming.What will be the problem?




Jincy

9 Answers, 1 is accepted

Sort by
0
Vlad
Telerik team
answered on 31 Mar 2008, 07:03 AM
0
jincy
Top achievements
Rank 1
answered on 31 Mar 2008, 07:45 AM
Hi,

I am using 
http://www.telerik.com/DEMOS/ASPNET/Prometheus/Grid/Examples/Programming/DetailTableDataBind/DefaultCS.aspx  this method for databinding. But paging not working.
0
Vlad
Telerik team
answered on 31 Mar 2008, 07:47 AM
Hello jincy,

Can you post an example?

Regards,
Vlad
the Telerik team

Instantly find answers to your questions at the new Telerik Support Center
0
jincy
Top achievements
Rank 1
answered on 31 Mar 2008, 07:59 AM
Hi,

I am sending a sample of what I had done.

<%@ Page Language="VB" MasterPageFile="~/MasterPages/BaseMasterPage.master" AutoEventWireup="false" MaintainScrollPositionOnPostback="true" EnableEventValidation="false" ViewStateEncryptionMode="Never" EnableViewStateMac="false" CodeFile="ProjectView.aspx.vb" Inherits="Test_Diaries_ProjectView" title="Untitled Page" %>
<%@ Register TagPrefix="telerik" Namespace="Telerik.QuickStart"  %>
<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<input type="hidden" name="HostNameHidden" id="HostNameHidden" runat="server" value="0" />
<table  class="MainTable" width="100%"  cellspacing="0" cellpadding="0" border="0" >
        <tr>
            <td valign="top">
                <table class="SubTable" cellspacing="0" cellpadding="0" border="0" width="100%"  >
                    <tr>
                        <td valign="top" style="height: 149px">
                            <table style="vertical-align:top" width="100%" cellspacing="0" cellpadding="0" border="0" >
                                <tr>
                                    <td class="Text14Bold" style="width:50%;" >
                                         iRGL Global Diary<br/><br />
                                    </td>
                                  
                                    <td style="width:3%;">
                                     
                                    </td>
                                    <td style="width:48%;" align="right" class="Text10">
                                           Change search criteria >>
                                    </td>
                                    <td style="width:2%;">
                                        &nbsp;
                                    </td>
                                    <td align="right">
                                        <asp:Button ID="ResetCriteria" runat="server" Text="Change"/>
                                    </td>
                                </tr>               
                             </table>
                          
                           <table  width="100%">
                                <tr>
                                    <td>
                                 <asp:ScriptManager id="ScriptManager1"  runat="server">
                                        </asp:ScriptManager>
        <!-- content start -->
        <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server">
            <AjaxSettings>
                <telerik:AjaxSetting AjaxControlID="RadGrid1">
                    <UpdatedControls>
                        <telerik:AjaxUpdatedControl ControlID="RadGrid1" />
                    </UpdatedControls>
                </telerik:AjaxSetting>
            </AjaxSettings>
        </telerik:RadAjaxManager>
       
         <telerik:RadGrid ID="RadGrid1" AllowPaging="true" PageSize="5"  runat="server" Skin="Vista" CssClass="Text10" Width="100%" AutoGenerateColumns="False"
               GridLines="None" ShowStatusBar="true" AllowMultiRowSelection="true">
            <PagerStyle Mode="NumericPages"></PagerStyle>
            <MasterTableView  DataKeyNames="ProjectNo" Name="Parent" HierarchyLoadMode="ServerBind"
                Width="100%" >
                  <Columns>
                     <telerik:GridBoundColumn  HeaderText="Date"  HeaderStyle-Width="12%" ItemStyle-Width="12%"
                        DataField="StartDate" Resizable="True" Reorderable="True">
                    </telerik:GridBoundColumn>
                    <telerik:GridBoundColumn  HeaderText="Duration" HeaderStyle-Width="12%" ItemStyle-Width="12%"
                        DataField="Duration" Resizable="True" Reorderable="True">
                    </telerik:GridBoundColumn>
                     <telerik:GridTemplateColumn HeaderText="Host" HeaderStyle-Width="12%" ItemStyle-Width="12%"  ItemStyle-HorizontalAlign="Left">
                    <ItemTemplate>
                    <asp:HyperLink runat="server" ID="Host"></asp:HyperLink>
                    <asp:Label ID="lblHostLogo" runat="server" ></asp:Label>
                    </ItemTemplate>
                    </telerik:GridTemplateColumn>
                    <telerik:GridTemplateColumn HeaderText="Title" HeaderStyle-Width="45%" ItemStyle-Width="45%" >
                    <ItemTemplate>
                    <asp:HyperLink runat="server" ID="Title"></asp:HyperLink>
                    </ItemTemplate>
                    </telerik:GridTemplateColumn>
                    <telerik:GridTemplateColumn HeaderText="Country" ItemStyle-HorizontalAlign="Center">
                     <ItemTemplate>
                     <asp:Image runat="server" ID="Country" Height="12px" Width="18px" AlternateText='<%#Eval("VenueCountryName")%>'  ImageUrl='<%#"~/Content\Images\Flags\ByCountry\" & Eval("VenueIsoCode2") &".gif" %>' />
                     </ItemTemplate>
                     </telerik:GridTemplateColumn>
                     <telerik:GridTemplateColumn HeaderText="Type" ItemStyle-HorizontalAlign="Center">
                     <ItemTemplate>
                     <asp:Image runat="server" ID="Type" Height="12px" Width="18px" AlternateText='<%#Eval("ProjectTypeName")%>' ImageUrl='<%#"~/Content" & Eval("ProjectTypeImageUrl") %>'/>
                     </ItemTemplate>
                     </telerik:GridTemplateColumn>
                     <telerik:GridTemplateColumn HeaderText="Languages" ItemStyle-HorizontalAlign="Center">
                     <ItemTemplate>
                     <asp:Image runat="server" ID="Languages" Height="12px" Width="18px" AlternateText='<%#Eval("LanguageName")%>'  ImageUrl='<%#"~/Content\images\Flags\" & Eval("LanguageImageUrl") %>' />
                     </ItemTemplate>
                     </telerik:GridTemplateColumn>
                     <telerik:GridTemplateColumn>
                     <ItemTemplate>
                     <asp:Label ID="lblStatus" runat="server" CssClass="Text11green"></asp:Label>
                     </ItemTemplate>
                     </telerik:GridTemplateColumn>
                </Columns>
                <DetailTables>
                    <telerik:GridTableView  AllowSorting="false" PageSize="5" runat="server" DataKeyNames="EventNo"  Width="100%">
                        <ParentTableRelation>
                            <telerik:GridRelationFields DetailKeyField="ProjectNo" MasterKeyField="ProjectNo" />
                        </ParentTableRelation>
                        <Columns>
                             <telerik:GridBoundColumn HeaderText="Date" DataField="StartDate" HeaderStyle-Width="12%" ItemStyle-Width="12%" >
                            </telerik:GridBoundColumn>
                            <telerik:GridBoundColumn HeaderText="Time" DataField="Duration" HeaderStyle-Width="15%" ItemStyle-Width="15%">
                            </telerik:GridBoundColumn>
                            <telerik:GridBoundColumn HeaderText="Title" DataField="EventTitle" HeaderStyle-Width="35%" ItemStyle-Width="35%">
                            </telerik:GridBoundColumn>
                            <telerik:GridBoundColumn HeaderText="Venue" DataField="EventVenueName" HeaderStyle-Width="15%" ItemStyle-Width="15%" >
                            </telerik:GridBoundColumn>
                            <telerik:GridBoundColumn HeaderText="City" DataField="EventVenueCityName" HeaderStyle-Width="15%" ItemStyle-Width="15%">
                            </telerik:GridBoundColumn>
                             <telerik:GridTemplateColumn HeaderText="Country" ItemStyle-HorizontalAlign="Center">
                             <ItemTemplate>
                             <asp:Image runat="server" ID="Country" Height="12px" Width="18px" AlternateText='<%#Eval("EventVenueCountryName")%>'  ImageUrl='<%#"~/Content\Images\Flags\ByCountry\" & Eval("VenueIsoCode2") &".gif" %>' />
                             </ItemTemplate>
                             </telerik:GridTemplateColumn>
                             <telerik:GridTemplateColumn HeaderText="Type" ItemStyle-HorizontalAlign="Center">
                             <ItemTemplate>
                             <asp:Image runat="server" ID="Type" Height="12px" Width="18px" AlternateText='<%#Eval("EventTypeName")%>' ImageUrl='<%#"~/Content" & Eval("EventTypeImageUrl") %>'/>
                             </ItemTemplate>
                             </telerik:GridTemplateColumn>
                             <telerik:GridTemplateColumn HeaderText="Languages" ItemStyle-HorizontalAlign="Center">
                             <ItemTemplate>
                             <asp:Image runat="server" ID="Languages" Height="12px" Width="18px" AlternateText='<%#Eval("LanguageName")%>' ImageUrl='<%#"~/Content\images\Flags\" & Eval("LanguageImageUrl") %>' />
                             </ItemTemplate>
                             </telerik:GridTemplateColumn>
                             <telerik:GridTemplateColumn>
                             <ItemTemplate>
                             <asp:Label ID="lblStatus" runat="server" CssClass="Text11green"></asp:Label>
                             </ItemTemplate>
                             </telerik:GridTemplateColumn>
                        </Columns>
                    </telerik:GridTableView>
                 </DetailTables>
            </MasterTableView>
            <ClientSettings>
                <Selecting AllowRowSelect="true" />
            </ClientSettings>
        </telerik:RadGrid>
                     </td>
                                </tr>
                            </table>
                           <table>
                                <tr><td>&nbsp;</td></tr>
                           </table>
                        </td>
                    </tr>
                </table>
            </td>
        </tr>
    </table>
</asp:Content>

--------------------------------------------------------------------------
Imports GlobalLeague.Utilities
Imports System.Data
Imports System.Data.SqlClient
Imports Telerik.WebControls
Imports Telerik.QuickStart
Imports Telerik.Web.UI
Partial Class Test_Diaries_ProjectView
    Inherits System.Web.UI.Page
    Public ds As New DataSet
    Public Property MyDataSet() As System.Data.DataSet
        Get
            Return ViewState("MyDataSet")
        End Get
        Set(ByVal value As System.Data.DataSet)
            ViewState("MyDataSet") = value
        End Set
    End Property
    Protected Sub Page_PreInit(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.PreInit
        Dim MyTheme As String
        'Response.Write(GlobalLeague.Login.LoginDetails.Host)
        If GlobalLeague.Login.LoginDetails.Host > " " Then
            MyTheme = GlobalLeague.Login.LoginDetails.Host & "theme"   'Should produce theme string like "DIRKtheme" which finds theme file in App_Themes
        Else
            MyTheme = ""
        End If
        Page.Theme = MyTheme
    End Sub
    Protected Sub RadGrid1_PreRender(ByVal sender As Object, ByVal e As System.EventArgs) Handles RadGrid1.PreRender
        HideExpandColumnRecursive(RadGrid1.MasterTableView)

    End Sub
    Public Sub HideExpandColumnRecursive(ByVal tableView As GridTableView)
        Dim nestedViewItems As GridItem() = tableView.GetItems(GridItemType.NestedView) 'used for hiding the expand/collapse image if no items are there in child grid
        For Each nestedViewItem As GridNestedViewItem In nestedViewItems
            For Each nestedView As GridTableView In nestedViewItem.NestedTableViews
                If nestedView.Items.Count = 0 Then
                    Dim cell As TableCell = nestedView.ParentItem("ExpandColumn")
                    cell.Controls(0).Visible = False
                    nestedViewItem.Visible = False
                End If
                If nestedView.HasDetailTables Then
                    HideExpandColumnRecursive(nestedView)
                End If
            Next
        Next
    End Sub

    Protected Sub ResetCriteria_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ResetCriteria.Click
        Context.Items.Add("NeedReload", "Yes")
        Session("Flag") = "Yes"
        Context.Items.Add("MyDataSet", MyDataSet)
        If HostNameHidden.Value > "" And HostNameHidden.Value <> "0" Then
            GlobalLeague.Login.LoginDetails.Host = HostNameHidden.Value
        End If
        Server.Transfer("~/Test/Diaries/HostPages/DiaryCriteria" + GlobalLeague.Login.LoginDetails.Host + ".aspx")
    End Sub
    Protected Sub RadGrid1_DetailTableDataBind(ByVal source As Object, ByVal e As Telerik.Web.UI.GridDetailTableDataBindEventArgs) Handles RadGrid1.DetailTableDataBind
        Dim dataItem As GridDataItem = CType(e.DetailTableView.ParentItem, GridDataItem)
        Dim ProjectNo As String = dataItem.GetDataKeyValue("ProjectNo").ToString
        ds = Session("ds")
        ds.Tables(1).DefaultView.RowFilter = "ProjectNo=" & ProjectNo
        e.DetailTableView.DataSource = ds.Tables(1).DefaultView  ' binding child grid
    End Sub

    Protected Sub RadGrid1_NeedDataSource(ByVal source As Object, ByVal e As Telerik.Web.UI.GridNeedDataSourceEventArgs) Handles RadGrid1.NeedDataSource
        If Not IsPostBack Then
            HostNameHidden.Value = GlobalLeague.Login.LoginDetails.Host
            Dim MyDataview As New System.Data.DataView, MyDataRow As System.Data.DataRowView, MyIPcommand As New SqlClient.SqlCommand
            MyDataSet = CType(Me.Context.Items("MyDataSet"), System.Data.DataSet)
            MyIPcommand.CommandText = "IPweb3005101getDiariesProjectView"
            MyIPcommand.CommandType = CommandType.StoredProcedure
            MyIPcommand.Connection = GlobalLeague.Utilities.Functions.GetConnection(True)
            MyIPcommand.Parameters.AddWithValue("@Key", GlobalLeague.Login.LoginDetails.LoginSessionID)
            MyDataview = MyDataSet.Tables("SearchCrit").DefaultView
            MyDataview.RowFilter = "Pick=1"
            For Each MyDataRow In MyDataview
                If MyDataRow("ControlName") Like "ddl*" Or MyDataRow("ControlName") Like "rbl*" Or MyDataRow("ControlName") = " " Then
                    MyIPcommand.Parameters.AddWithValue("@" & MyDataRow("ParamText"), MyDataRow("ItemValue"))
                ElseIf MyDataRow("ControlName") = "HostNameLike" Then
                    MyIPcommand.Parameters.AddWithValue("@" & MyDataRow("ParamText"), MyDataRow("ItemText"))
                Else
                    MyIPcommand.Parameters.AddWithValue("@" & MyDataRow("ParamText"), Convert.ToDateTime(MyDataRow("ItemText")))
                End If
            Next
            Dim adapter As SqlDataAdapter = New SqlDataAdapter(MyIPcommand)
            adapter.Fill(ds)
            Session("ds") = ds
            Me.RadGrid1.DataSource = ds 'binding parent grid
        End If
    End Sub

    Protected Sub RadGrid1_ItemDataBound(ByVal sender As Object, ByVal e As Telerik.Web.UI.GridItemEventArgs) Handles RadGrid1.ItemDataBound
        Dim hlHost As HyperLink
        Dim hlTitle As HyperLink
        Dim lblHostLogo As Label
        Dim lblStatus As Label
        Dim imgType As Image
        hlHost = e.Item.FindControl("Host")
        hlTitle = e.Item.FindControl("Title")
        lblHostLogo = e.Item.FindControl("lblHostLogo")
        lblStatus = e.Item.FindControl("lblStatus")
        imgType = e.Item.FindControl("Type")
        If e.Item.ItemType = GridItemType.Item Or e.Item.ItemType = GridItemType.AlternatingItem Then
            If e.Item.OwnerTableView.Name = "Parent" Then

                If System.IO.File.Exists(MapPath("~\Content\Images\MemberLogos\" + DataBinder.Eval(e.Item.DataItem, "ProjectHostNo").ToString + ".gif")) Then
                    lblHostLogo.Text = "<img  src='" + URLParser.GetAbsoluteUrlReference() + "content\Images\MemberLogos\" + DataBinder.Eval(e.Item.DataItem, "ProjectHostNo").ToString + ".gif' alt='" + DataBinder.Eval(e.Item.DataItem, "ProjectHostName").ToString + "'></img>"
                    lblHostLogo.Attributes.Add("OnClick", "window.open('" + URLParser.GetAbsoluteUrlReference() + "Calendar/Diaries/components/" + "CompanyDetails.aspx?CompanyNo=" + DataBinder.Eval(e.Item.DataItem, "ProjectHostNo").ToString + "','CompanyDetails" + DataBinder.Eval(e.Item.DataItem, "ProjectHostNo").ToString + "','screenX=200, screenY=200, width=800, height=800, scrollbars, sizeable');")
                    lblHostLogo.Style.Add("Cursor", "Hand")
                    hlHost.Visible = False
                Else
                    If DataBinder.Eval(e.Item.DataItem, "ProjectHostName").ToString.Length > 12 Then
                        hlHost.Text = DataBinder.Eval(e.Item.DataItem, "ProjectHostName").ToString.Substring(0, 12)
                    Else
                        hlHost.Text = DataBinder.Eval(e.Item.DataItem, "ProjectHostName").ToString
                    End If

                    hlHost.ToolTip = DataBinder.Eval(e.Item.DataItem, "ProjectHostName").ToString
                    hlHost.Attributes.Add("OnClick", "window.open('" + URLParser.GetAbsoluteUrlReference() + "Calendar/Diaries/components/" + "CompanyDetails.aspx?CompanyNo=" + DataBinder.Eval(e.Item.DataItem, "ProjectHostNo").ToString + "','CompanyDetails" + DataBinder.Eval(e.Item.DataItem, "ProjectHostNo").ToString + "','screenX=200, screenY=200, width=800, height=800, scrollbars, sizeable');")
                    hlHost.Style.Add("Cursor", "Hand")
                    lblHostLogo.Visible = False
                    hlHost.Visible = True
                    hlHost.Font.Bold = False
                End If
                If DataBinder.Eval(e.Item.DataItem, "ProjectTitle").ToString.Length > 70 Then
                    hlTitle.Text = DataBinder.Eval(e.Item.DataItem, "ProjectTitle").ToString.Substring(0, 70)
                Else
                    hlTitle.Text = DataBinder.Eval(e.Item.DataItem, "ProjectTitle").ToString
                End If
                hlTitle.ToolTip = DataBinder.Eval(e.Item.DataItem, "ProjectTitle").ToString
                hlTitle.Attributes.Add("OnClick", "window.open('" + GlobalLeague.Utilities.URLParser.GetAbsoluteUrlReference() + "Calendar/Diaries/components/" + "ProjectDetails.aspx?ProjectNo=" + DataBinder.Eval(e.Item.DataItem, "ProjectNo").ToString + "','Eventdetails" + DataBinder.Eval(e.Item.DataItem, "ProjectNo").ToString + "','screenX=200, screenY=200, width=800, height=700, scrollbars, sizeable');")
                hlTitle.Style.Add("Cursor", "Hand")
                hlTitle.Visible = True
                hlTitle.Font.Bold = False
                If GlobalLeague.Login.LoginDetails.LoginSessionID <> Nothing Then
                    lblStatus.Text = "<img alt='" + DataBinder.Eval(e.Item.DataItem, "AccessCodeName") + "' src='" + URLParser.GetAbsoluteUrlReference() + "content" + DataBinder.Eval(e.Item.DataItem, "AccessCodeImageUrl") + "'></img>"
                End If
                imgType.ImageUrl = URLParser.GetAbsoluteUrlReference() + "content" + Trim(DataBinder.Eval(e.Item.DataItem, "ProjectTypeImageUrl").ToString)
            Else
                If GlobalLeague.Login.LoginDetails.LoginSessionID <> Nothing Then
                    lblStatus.Text = "<img alt='" + DataBinder.Eval(e.Item.DataItem, "AccessCodeName") + "' src='" + URLParser.GetAbsoluteUrlReference() + "content" + DataBinder.Eval(e.Item.DataItem, "AccessCodeImageUrl") + "'></img>"
                End If
            End If
        End If
    End Sub

    Protected Sub RadGrid1_PageIndexChanged(ByVal source As Object, ByVal e As Telerik.Web.UI.GridPageChangedEventArgs) Handles RadGrid1.PageIndexChanged

    End Sub
End Class




Jincy

0
jincy
Top achievements
Rank 1
answered on 31 Mar 2008, 08:28 AM
Hi Vlad,

I think you didn't noticed.It is there in the code itself which I had send.

Protected

Sub RadGrid1_DetailTableDataBind(ByVal source As Object, ByVal e As Telerik.Web.UI.GridDetailTableDataBindEventArgs) Handles RadGrid1.DetailTableDataBind

Dim dataItem As GridDataItem = CType(e.DetailTableView.ParentItem, GridDataItem)

Dim ProjectNo As String = dataItem.GetDataKeyValue("ProjectNo").ToString

ds = Session(

"ds")

ds.Tables(1).DefaultView.RowFilter =

"ProjectNo=" & ProjectNo

e.DetailTableView.DataSource = ds.Tables(1).DefaultView

' binding child grid

End Sub


Regards,
Jincy

0
Vlad
Telerik team
answered on 31 Mar 2008, 08:29 AM
Hello jincy,

Yep. Sorry for this.

Can you please try to remove RowFilter to see what will be the result?

Sincerely yours,
Vlad
the Telerik team

Instantly find answers to your questions at the new Telerik Support Center
0
jincy
Top achievements
Rank 1
answered on 31 Mar 2008, 08:41 AM
Hi Vlad,

Sorry to say no change.Paging is not working still.


Regards,
Jincy
0
Vlad
Telerik team
answered on 31 Mar 2008, 10:22 AM
Hello jincy,

Please open a formal support ticket and send us small example. I will review your scenario and I will get back to you with more info.

All the best,
Vlad
the Telerik team

Instantly find answers to your questions at the new Telerik Support Center
0
jincy
Top achievements
Rank 1
answered on 01 Apr 2008, 09:06 AM
Hi Vlad,

Thanks for the support. My issue is solved. The problem is that: I gave the code inside the need datasource in if not is postback. Now the issue is solved. Thanks once again for your support.


Jincy
Tags
Grid
Asked by
jincy
Top achievements
Rank 1
Answers by
Vlad
Telerik team
jincy
Top achievements
Rank 1
Share this question
or