我想在网格视图中进行排序(ASP.Net 4.5)GridView DataSource总是返回null
代码非常简单。网格视图具有使用简单的查询像SELECT * FROM表
排序事件下面的代码AllowSorting和的AutoGenerateColumns设置为真正
网格视图被填充上按一下按钮(代码可能有一些语法错误,因为我只是写它而不是从原始源复制它):
protected void GridView_Sorting(object sender, GridViewSortEventArgs e)
{
DataTable dt = grid1.DataSource as DataTable;
if(dt != null)
{
//do some sorting
}
}
问题是dt始终为空。我尝试使用以下但相同的问题。
DataTable dt = (DataTable)grid1.DataSource;
我试图保存数据表(上填充的GridView当按钮单击事件)的视图状态,然后当我把它上面的排序方法,现在DT不为空,但它仍然是空的,也有在里面0行。
为什么dt为空以及如何进行排序?
编辑按钮点击
代码如下
SqlConnection con = new SqlConnection(strConnection);
SqlCommand sqlCmd = new SqlCommand();
sqlCmd.Connection = con;
sqlCmd.CommandType = CommandType.Text;
sqlCmd.CommandText = "Select * from titles";
SqlDataAdapter sqlDataAdap = new SqlDataAdapter(sqlCmd);
DataTable dtRecord = new DataTable();
sqlDataAdap.Fill(dtRecord);
grid1.DataSource = dtRecord;
ViewState["grid1"] = dtRecord;
grid1.DataBind();
如何和wh你是否设置网格的数据源属性? – Steve
请使用您设置'grid1.DataSource'的代码以及SQL语句更新OP。 – Hank
你可以给你设置数据源的行吗? –