Private Sub DataGrid1_SortCommand(ByVal source As Object, _
ByVal e As System.Web.UI.WebControls.DataGridSortCommandEventArgs) _
Handles DataGrid1.SortCommand
DataView1.Sort = e.SortExpression
DataGrid1.DataBind()
End Sub
在datagridj属性里把可以排序钩了,还有排序表达式也写了,但为什么按页眉就是不能排序呢?后来我用了其它的代码,可以排序,也就证明了差就差在上面代码上。但是看了很多代码,就是写这几行代码啊?。。
ByVal e As System.Web.UI.WebControls.DataGridSortCommandEventArgs) _
Handles DataGrid1.SortCommand
DataView1.Sort = e.SortExpression
DataGrid1.DataBind()
End Sub
在datagridj属性里把可以排序钩了,还有排序表达式也写了,但为什么按页眉就是不能排序呢?后来我用了其它的代码,可以排序,也就证明了差就差在上面代码上。但是看了很多代码,就是写这几行代码啊?。。
解决方案 »
- 现在 碰到了这样的问题 Microsoft OLE DB Provider for ODBC Drivers (0x80004005) [Microsoft][ODBC Microsoft Acce
- 这不是引诱... http://topic.csdn.net/u/20090226/15/e123b8ec-7aa2-4271-afa6-80ae61ecb632.html?seed=97962757
- 简单的正则问题 为什么我的 无法匹配:%>\s{0,}<%
- 很简单的问题,希望大家能帮忙解答下!我现在 在犹豫中
- 一个很难想通的问题,在线等,急!!!!!
- ASP.NET 2.0 部署後修改問題
- 紧急求救:怎么解除GridView的数据源绑定
- 网上客服的功能怎么来设计呢?(就是简单的web般的即时通讯)[up有分]
- C# 读取某一节点的值?
- 字符串处理,高分,急,马上结帖
- asp.net中TextMode="MultiLine"时,设置MaxLength长度不作用,如何解决?
- 如何不用控件把d:\mypicture.jpg读到页面上显示 语言是asp.net(vb.net)
DataGrid1.DataBind()DataGrid1和DataView1有任何关系么??怎么没有体现出来?~~
DataGrid1绑定到谁身上了?~~需要制定的!率果果~~
dv.Sort = "FileDate DESC" Me.DataList1.DataSource = dv
Me.DataList1.DataBind()
private void Page_Load(object sender, System.EventArgs e)
{
if(!Page.IsPostBack)
{
ViewState["SortExpression"]="";
ViewState["sort"]="desc";
SqlConnection conn=new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["conn"]);
SqlDataAdapter da=new SqlDataAdapter("select * from stu,dep where stu.studepid=dep.depid",conn);
da.Fill(ds);
DataGrid1.DataSource=ds;
DataGrid1.DataBind(); }
}
//2.用viewstate来保存dataset,让它不被刷新丢失,
private DataSet ds
{
get
{
return ViewState["ds"] as DataSet;
}
set
{
ViewState["ds"] = value;
}
}
//3.排序事件中处理
private void DataGrid1_SortCommand(object source, DataGridSortCommandEventArgs e)
{
string sort=string.Empty;
if(ViewState["SortExpression"].ToString()==e.SortExpression.ToString())
{
if(ViewState["sort"].ToString()=="asc")
{
sort="desc";
}
else
{
sort="asc";
}
}
else
{
if(ViewState["sort"].ToString()=="asc")
{
sort="desc";
}
else
{
sort="asc";
}
}
ViewState["sort"]=sort;
ViewState["SortExpression"]=e.SortExpression;
DataView dv=new DataView(ds.Tables[0],null,e.SortExpression+" "+sort,DataViewRowState.CurrentRows);
DataGrid1.DataSource=dv;
DataGrid1.DataBind();
}
{
DataTable dt = (DataTable)Session["Source"];
DataView dv = new DataView(dt); dv.Sort = e.SortExpression;
ItemsGrid.DataSource = dv;
ItemsGrid.DataBind();
}注意:它里面是指定DV的排序方式,但同时又把它做为数据源,你上面的DataView1是页面级变量吗?如果不是,你设定了它的排序,跟后面的绑定又有何关系?
{
string sortExpression = (string)ViewState["SortExpression"];
for (int i=0; i < DataGrid1.Columns.Count; i++)
{
if (i == 0) continue;
if(e.Item.ItemIndex==-1)
{
if (DataGrid1.Columns[i].SortExpression == sortExpression)
{
TableCell tableCell = e.Item.Cells[i];
Label label = new Label();
label.Font.Name = "webdings";
if(ViewState["sort"].ToString()=="asc")
{
label.Text="6";
}
else
{
label.Text="5";
}
label.Width =20;
tableCell.Controls.Add(label);
}
}
}
}
DataGrid1.DataSource = ?
DataGrid1.DataBind()