Telerik RadGrid寻呼时数据不正确

Telerik RadGrid寻呼时数据不正确,telerik,paging,radgrid,Telerik,Paging,Radgrid,我有一个文本框、一个搜索按钮和一个RadGrid,它已经被onnedDataSource事件绑定到了数据。当我单击“搜索”按钮时,它将获得新数据,并在“搜索”按钮单击事件上重新绑定()该数据 但是当我在网格上更改页码时,数据源不是我已经重新绑定过的数据源()。。我在换页时没有发现任何问题。 由于数据源不同,您可能需要将重新绑定更改为数据绑定。 重新绑定很可能会收回以前的数据源 .aspx <asp:ScriptManager ID="sm" runat="server"></a

我有一个文本框、一个搜索按钮和一个RadGrid,它已经被onnedDataSource事件绑定到了数据。当我单击“搜索”按钮时,它将获得新数据,并在“搜索”按钮单击事件上重新绑定()该数据


但是当我在网格上更改页码时,数据源不是我已经重新绑定过的数据源()。。我在换页时没有发现任何问题。 由于数据源不同,您可能需要将
重新绑定
更改为
数据绑定
重新绑定
很可能会收回以前的
数据源

.aspx

<asp:ScriptManager ID="sm" runat="server"></asp:ScriptManager>

<asp:TextBox ID="txt" runat="server" Text=""></asp:TextBox> &nbsp;
<telerik:RadButton ID="btn" runat="server" Text="Search" OnClick="btn_Click">
</telerik:RadButton>

<br /><br />
<telerik:RadGrid ID="rg" runat="server" PageSize="5" 
    OnNeedDataSource="rg_NeedDataSource" AllowPaging="true"
    AutoGenerateColumns="false">
    <MasterTableView>
        <Columns>
            <telerik:GridBoundColumn DataField="Text" HeaderText="Sample">
            </telerik:GridBoundColumn>
        </Columns>
    </MasterTableView>
    <PagerStyle Mode="NumericPages" />
</telerik:RadGrid>



.cs

protected void Page_Load(object sender, EventArgs e)
{
    // Variable
    DataTable dt = new DataTable();
    dt.Columns.Add("Text");

    for (int i = 0; i < 20; i++)
        dt.Rows.Add("DataSource before search First Item No." + (i + 1));

    // Save to Viewstate
    ViewState["Data"] = dt;

    // Bind
    rg.DataSource = dt;
    rg.DataBind();
}

protected void rg_NeedDataSource(object sender, GridNeedDataSourceEventArgs e)
{
    rg.DataSource = ViewState["Data"] as DataTable;
}

protected void btn_Click(object sender, EventArgs e)
{
    // Variable
    DataTable dt = new DataTable();
    dt.Columns.Add("Text");

    // Loop
    for (int i = 0; i < 20; i++)
        dt.Rows.Add("Datasource Search button item no " + (i + 1));

    // Viewstate the new Datasource
    ViewState["Data"] = dt;

    // Reset Page
    rg.CurrentPageIndex = 0;

    // Bind
    rg.DataSource = dt;
    rg.DataBind();
}
受保护的无效页面加载(对象发送方,事件参数e)
{
//变数
DataTable dt=新的DataTable();
dt.列。添加(“文本”);
对于(int i=0;i<20;i++)
dt.Rows.Add(“搜索第一个项目编号前的数据源”+(i+1));
//保存到视图状态
视图状态[“数据”]=dt;
//束缚
rg.DataSource=dt;
rg.DataBind();
}
受保护的void rg_NeedDataSource(对象发送方,GridNeedDataSourceEventArgs e)
{
rg.DataSource=ViewState[“Data”]作为DataTable;
}
受保护的无效btn_单击(对象发送方,事件参数e)
{
//变数
DataTable dt=新的DataTable();
dt.列。添加(“文本”);
//环路
对于(int i=0;i<20;i++)
添加(“数据源搜索按钮项号”+(i+1));
//查看新数据源的状态
视图状态[“数据”]=dt;
//重置页面
rg.CurrentPageIndex=0;
//束缚
rg.DataSource=dt;
rg.DataBind();
}

也许发布一些代码可以帮助我们识别您的问题。。。