Recentemente ho iniziato ad usare ASP.Net e RadGrid di Telerik ma hanno funzionato in un problema:Telerik RadGrid Paging - record duplicati e pulsanti che spuntano
Il mio scopo RadGrid è all'interno di un oggetto UserControl all'interno di un oggetto controllo personalizzato all'interno di un Oggetto della pagina (che ha un gestore di script).
Ho diversi controlli utente all'interno di detto controllo personalizzato, ognuno contenente il markup per un oggetto RadGrid come di seguito:
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="AreaListRadGrid.ascx.cs" Inherits="WebControls.AreaListRadGrid" %>
<%@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" assembly="Telerik.Web.UI" %>
<telerik:RadAjaxPanel runat="server" ID="radAjaxPanel"
EnableAJAX="true" LoadingPanelID="radAjaxLoadingPanel">
<telerik:RadGrid AllowPaging="true" AutoGenerateColumns="false" DataSourceID="gridData" EnableViewState="true" GridLines="None" ID="radGrid" runat="server">
<PagerStyle Mode="NumericPages" />
<MasterTableView>
<Columns>
<telerik:GridBoundColumn DataField="ColA" HeaderText="A" />
<telerik:GridBoundColumn DataField="ColB" HeaderText="B" />
<telerik:GridBoundColumn DataField="ColC" HeaderText="C" />
<telerik:GridBoundColumn DataField="ColD" HeaderText="D" />
<telerik:GridBoundColumn DataField="ColE" HeaderText="E" />
</Columns>
</MasterTableView>
</telerik:RadGrid>
</telerik:RadAjaxPanel>
<asp:ObjectDataSource ID="gridData" runat="server"
SelectMethod="GetData"
SelectCountMethod="GetDataCount"
OnObjectCreating="dataObjectCreating"
TypeName="AreaListRadGrid">
</asp:ObjectDataSource>
<telerik:RadAjaxLoadingPanel runat="server" ID="radAjaxLoadingPanel">
Loading please wait....
</telerik:RadAjaxLoadingPanel>
ho cambiato i nomi delle colonne e spazi dei nomi a qualcosa di non-progetto specifico, ma la carichi di griglia.
perchè è in un controllo personalizzato, che viene istanziato come segue:
var view = (AreaListRadGrid)this.TemplateControl.LoadControl(".\\WebControls\\AreaListRadGrid.ascx");
view.DataSource = dataSet;
areaCenterMiddle.Controls.Add(view);
view.RadGrid.Rebind();
la variabile dataSet
è di tipo System.Data.DataSet
.
Quindi, quando eseguo questo sito Web, appare la griglia Rad. Ho una griglia con 4 righe, 3 delle quali sono a pagina 1 e la riga finale è a pagina 2. Quando faccio clic su pagina 2, tutto avviene come previsto. Lo stile per i pulsanti della pagina cambia e le righe della pagina 1 vengono rimosse, con la riga della pagina 2 aggiunta alla griglia. Grande! Quello che succede dopo è quello che non capisco:
Quando si fa nuovamente clic sulla pagina 1, lo stile per il pulsante della pagina 2 non cambia (quindi è ancora come se fosse cliccato) e le righe 2 e 3 appaiono sul griglia, ma la prima riga è la riga che era a pagina 2.
sembra come se la pagina 2 non è di compensazione quando la pagina viene caricata 1, non sono sicuro di come o perché questo è, anche se. Qualcuno ha qualche idea su cosa sto facendo in modo errato?
Apprezzerei molto il vostro aiuto.
Cheers,
Rob
Davvero una buona domanda. Ecco come dovrebbero essere le domande. –
Qualche possibilità di postare il controllo stesso? Ho iniziato a configurare un progetto per la risoluzione dei problemi, ma mi sono reso conto che non c'è modo di non creare un'istanza dell'oggetto. – KreepN
Hai riscontrato questo problema in tutti i browser o solo in un browser specifico? –