C# 防止在事件发生之前加载数据

C# 防止在事件发生之前加载数据,c#,asp.net,gridview,webforms,sqldatasource,C#,Asp.net,Gridview,Webforms,Sqldatasource,我在一个页面上有一组GridView,每个都有自己的协调SqlDataSource 当在页面加载上初始化页面时,它们都会加载它们的协调数据。我希望在用户单击按钮时加载页面上特定SqlDataSources的数据,这样它就不会试图在页面最初加载时同时加载所有不同网格的所有数据 注意:我还需要让分页工作,到目前为止我尝试的任何东西都破坏了分页功能 希望在用户单击按钮后告诉SqlDataSource要绑定哪些数据,然后让特定的GridView将该数据绑定到SqlDataSource,并让分页功能处理要

我在一个页面上有一组GridView,每个都有自己的协调SqlDataSource

当在页面加载上初始化页面时,它们都会加载它们的协调数据。我希望在用户单击按钮时加载页面上特定SqlDataSources的数据,这样它就不会试图在页面最初加载时同时加载所有不同网格的所有数据

注意:我还需要让分页工作,到目前为止我尝试的任何东西都破坏了分页功能

希望在用户单击按钮后告诉SqlDataSource要绑定哪些数据,然后让特定的GridView将该数据绑定到SqlDataSource,并让分页功能处理要加载的数据

环境:C、WebForms、ASP.NET、.NET3.5、控件SqlDataSource/GridView

据我所知,它正确地绑定了数据,但当我单击页面底部的一个页面进行分页时,“gridview”控件一直消失

注意:如果我再次单击按钮,它将显示正确的页面和页面的正确数据

protected void btn_LoadData2_Click(object sender, EventArgs e) { Gridview2.DataSourceID = "DataSource2"; Gridview2.SelectCommand = "SELECT * FROM dbo.DataNeeded"; Gridview2.DataBind(); Gridview2.DataBind(); }

向每个数据源添加选择事件。然后在代码隐藏中检查IsPostBack,如果IsPostBack为false,则取消操作

protected void MyDataSource_Selecting(object sender, SqlDataSourceSelectingEventArgs e)
{
    if (!IsPostBack)
        e.Cancel = true;
}

请显示您的代码,您似乎在HTML中将GridView链接到SqlDataSource,最好在您的代码后面这样做,这样您就可以在需要时专门加载GridView,例如,加载,单击事件,从我所知,它看起来正确绑定了数据,但由于某种原因,当我单击底部的一个页面进行分页时,“gridview”控件一直消失。注意:如果我再次单击按钮,它将显示正确的页面和页面的正确数据。不知道为什么。受保护的void btn_LoadData2_Clickobject sender,EventArgs e{Gridview2.DataSourceID=DataSource2;Gridview2.SelectCommand=SELECT*FROM dbo.DataNeeded;Gridview2.DataBind;Gridview2.DataBind;}