2015-02-10 3 views
0

Я пробовал все, что мог, возможно, собирать из того, что я читал (от добавления источника необходимости к добавлению pageindexchanged и т. Д. в состоянии понять это ... любая помощь будет с благодарностью слизала ...Проблема с разбивкой по страницам тележира Telerik - следующая страница, предыдущая страница, первая страница и последняя страница не работают

Ниже мой код ...

<asp:UpdatePanel runat="server" UpdateMode="Conditional"> 
    <ContentTemplate> 
     <telerik:RadAjaxManager ID="ram1" runat="server"> 
     <AjaxSettings> 
      <telerik:AjaxSetting AjaxControlID="ajaxtimer1"> 
       <UpdatedControls> 
        <telerik:AjaxUpdatedControl ControlID="rgNewsFeed" LoadingPanelID="LoadingPanel1" /> 
       </UpdatedControls> 
      </telerik:AjaxSetting> 
     </AjaxSettings> 
    </telerik:RadAjaxManager> 

    <telerik:RadAjaxLoadingPanel ID="LoadingPanel1" runat="server" /> 

     <telerik:RadGrid ID="rg1" runat="server" ShowStatusBar="True" AllowPaging="true" > 
     <MasterTableView AutoGenerateColumns="False" TableLayout="Fixed"> 
      <Columns> 
       <telerik:GridBoundColumn DataField="CommentSubject" HeaderText="Subject" /> 
       <telerik:GridHyperLinkColumn DataTextField="CommentText" DataTextFormatString="{0}" DataNavigateUrlFormatString="~/Views/m.aspx?pEntityID={0}" 
        DataNavigateUrlFields="CmtTextID" HeaderText="Details" UniqueName="gbcCommentText" /> 
       <telerik:GridBoundColumn DataField="EntityFundName" HeaderText="Entity/Fund" /> 
       <telerik:GridBoundColumn DataField="EnteredBy" HeaderText="Entered by" /> 
       <telerik:GridBoundColumn DataField="CommentAge" HeaderText="Last Updated" /> 
      </Columns> 
     </MasterTableView> 
    </telerik:RadGrid> 

    <asp:Panel ID="Panel1" runat="server"> 
     <asp:Timer ID="Timer1" runat="server" Interval="3000"> 
     </asp:Timer> 
    </asp:Panel> 

    </ContentTemplate> 
</asp:UpdatePanel> 

код за

Protected Sub OnLoad(sender As Object, e As System.EventArgs) Handles Me.Load 

     rg1.DataSource = dt 'some datatable 
     rg1.DataBind() 

End Sub 

Public Sub Timer1_Tick(ByVal sender As Object, ByVal e As EventArgs) Handles Timer1.Tick 
     rg1.DataSource = dt 'some datatable 
     System.Threading.Thread.Sleep(500) 
End Sub 

Protected Sub rgLeoNotesNewsFeed_NeedDataSource(sender As Object, e As Telerik.Web.UI.GridNeedDataSourceEventArgs) Handles rgLeoNotesNewsFeed.NeedDataSource 


    rg1.DataSource = dt 'some datatable 


End Sub 

ответ

1

Во-первых, я d repl туз asp:UpdatePanel с telerik:RadAjaxPanel. Мне пришлось некоторое время использовать компоненты telerik и не было лучшего времени. Если вы используете radgrid и пытаетесь использовать с ним обновленную панель, используйте соответствующий компонент telerik, такой как telerik:RadAjaxPanel. Таким образом, вы столкнетесь с меньшими проблемами.

Во-вторых, я немного запутался со следующей частью

<telerik:AjaxSetting AjaxControlID="ajaxtimer1"> 
    <UpdatedControls> 
     <telerik:AjaxUpdatedControl ControlID="rgNewsFeed" LoadingPanelID="LoadingPanel1" /> 
    </UpdatedControls> 
</telerik:AjaxSetting> 

Вы, кажется, не имеют каких-либо элементов управления с идентификаторами rgNewsFeed и ajaxtimer1. Вы в основном говорите RadAjaxManager для обновления rgNewsFeed на ajaxtimer1 обновление.

Не должно ли это быть как

<telerik:AjaxSetting AjaxControlID="Timer1"> 
    <UpdatedControls> 
     <telerik:AjaxUpdatedControl ControlID="rg1" LoadingPanelID="LoadingPanel1" /> 
    </UpdatedControls> 
</telerik:AjaxSetting> 

Кроме того, вы должны ajaxify вашу сетку так

<telerik:AjaxSetting AjaxControlID="rg1"> 
    <UpdatedControls> 
     <telerik:AjaxUpdatedControl ControlID="rg1"></telerik:AjaxUpdatedControl> 
    </UpdatedControls> 
</telerik:AjaxSetting> 

Не уверен, что, если ваш вопрос связан с тем, но дать ему попробовать и посмотрите, работает ли это.

EDIT

Protected Sub OnLoad(sender As Object, e As System.EventArgs) Handles Me.Load 
     rg1.DataSource = dt 'some datatable 
     rg1.DataBind() 
End Sub 

Я думаю, вы должны установить источник данных при каждом вызове, но называют DataBind метод только если это не постбэк. Попробуйте следующее.

Protected Sub OnLoad(sender As Object, e As System.EventArgs) Handles Me.Load 
    rg1.DataSource = dt 'some datatable 
    If Not IsPostBack Then 
     rg1.DataBind() 
    End If 
End Sub 
+0

В моей попытке запутаться, я пошел за борт. Извините за очевидные ошибки в коде ... Я постараюсь реализовать ваши предложения и вернуться к вам. – chaltahai

+1

На самом деле, не обязательный для обратной передачи сделал трюк ... большое спасибо! – chaltahai

+0

рад, что сработал, ура !:] –

Смежные вопросы