1

私のページにはradgridがあります。ビューステートをオフにし、pageindexchangedイベントで次のページをクリックすると、何も表示されません。単に空白のページ。しかし、ビューステートをオンにすると、次のページにデータが表示されます。データを取得する方法はありますか?パフォーマンスの問題により、ビューステートをオンにできません。以下のコードを参照してください。

.aspx

    <telerik:RadGrid ID="RadGrid1" OnSortCommand="RadGrid1_SortCommand" OnPageIndexChanged="RadGrid1_PageIndexChanged"
        AllowSorting="True" PageSize="20" ShowGroupPanel="True" AllowPaging="True" AllowMultiRowSelection="True"
        AllowFilteringByColumn="true" AutoGenerateColumns="false" EnableViewState="false" runat="server" GridLines="None"
        OnItemUpdated="RadGrid1_ItemUpdated" OnDataBound="RadGrid1_DataBound">

aspx.cs

public Partial class _Default:System.Web.UI.Page {protected void Page_Load(object sender、EventArgs e){LoadData(); }

private void LoadData()
{
    SqlConnection SqlConn = new SqlConnection("uid=tempuser;password=tempuser;data source=USWASHL10015\\SQLEXPRESS;database=CCOM;");
    SqlCommand cmd = new SqlCommand();
    cmd.Connection = SqlConn;
    cmd.CommandType = CommandType.StoredProcedure;
    cmd.CommandText = "usp_testing";
    SqlDataAdapter da = new SqlDataAdapter(cmd);
    DataSet ds = new DataSet();
    da.Fill(ds);
    RadGrid1.DataSource = ds;
    RadGrid1.DataBind();
    //RadGrid1.ClientSettings.AllowDragToGroup = true;
}

protected void RadGrid1_PageIndexChanged(object source, Telerik.Web.UI.GridPageChangedEventArgs e)
{
    //RadGrid1.Rebind();
    LoadData();
} 
4

1 に答える 1

2

次のサンプルに示すように、NeedDataSourceグリッドイベントをフックする高度なバインディングを試してください:http: //demos.telerik.com/aspnet-ajax/grid/examples/programming/needdatasource/defaultcs.aspx

したがって、ビューステートをオフにしてページングできるはずです。

ディック

于 2010-05-20T11:29:57.013 に答える