C# 更新GridView选择命令
我有一个gridView,它使用sourceC# 更新GridView选择命令,c#,asp.net,gridview,C#,Asp.net,Gridview,我有一个gridView,它使用sourceDataSourceID=“SqlDataSource1” testPage.aspx: <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString %>" SelectCommand="SELECT [Field1], [Field2], [Field3], [Fiel
DataSourceID=“SqlDataSource1”
testPage.aspx:
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$
ConnectionStrings:ConnectionString %>"
SelectCommand="SELECT [Field1], [Field2], [Field3], [Field4] FROM [Analysis]
ORDER BY [Field1] DESC">
</asp:SqlDataSource>
protected void ctl04_ValueChanged(object sender, EventArgs e)
{
SqlDataSource1.SelectCommand = "SELECT [Field1], [Field2],
[Field3], [Field4] FROM [Analysis] WHERE [Field1] = 'items' ORDER BY
[Field1] DESC";
gridView1.DataBind();
}
事件激发并看起来运行正常,但gridView1不刷新/更新,仍然包含完整表的数据
有人能给点建议如何让它工作吗?
谢谢我认为问题在于
回发
和页面加载。当页面打开并调用page_load方法时。然后使用defaultSELECT
语句刷新GridView
。您应该将刷新代码放入此代码中:
if (!Page.IsPostback)
{
// Your Code
}
如何创建第二个sql数据源,您可以在它们之间切换。我认为这是因为回发Try
GridView.DataSource=null重新指定select命令之前,请执行代码>操作。这将强制使用新的SelectCommand
重新绑定GridView
。这对我不起作用,它运行正常,但事件激发后gridView1仍然包含完整的表数据。谢谢。我删除了ctl04\u ValueChanged
事件并添加了AutoPostBack=“True”
然后将代码移动到页面加载事件。