|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
刚刚打开这篇专题,猛然见到HAL9000发表的《对于大型公司项目平台选择j2ee的几层认识》系列,深受启发。我们在良多的第三方控件中城市发明有点击列头举行排序的功效,实在,在GridView控件中也是能够完成的,上面我们就看看怎样在GridView控件中完成排序的示例。
以下为完成在GridView控件排序功效的全体代码,列位只需复制粘贴到vs中便可运转。
前台代码:
<asp:GridViewID="GridView1"runat="server"AllowSorting="True"AutoGenerateColumns="False"CellPadding="3"OnSorting="GridView1_Sorting">
<Columns>
<asp:BoundFieldDataField="身份证号码"HeaderText="用户ID"SortExpression="身份证号码"/>
<asp:BoundFieldDataField="姓名"HeaderText="用户姓名"SortExpression="姓名"/>
<asp:BoundFieldDataField="员工性别"HeaderText="性别"SortExpression="员工性别"/>
<asp:BoundFieldDataField="家庭住址"HeaderText="家庭住址"SortExpression="家庭住址"/>
</Columns>
</asp:GridView>
背景代码:
usingSystem;
usingSystem.Data;
usingSystem.Configuration;
usingSystem.Collections;
usingSystem.Web;
usingSystem.Web.Security;
usingSystem.Web.UI;
usingSystem.Web.UI.WebControls;
usingSystem.Web.UI.WebControls.WebParts;
usingSystem.Web.UI.HtmlControls;
usingSystem.Data.SqlClient;
publicpartialclassDefault1:System.Web.UI.Page
{
SqlConnectionsqlcon;
stringstrCon="DataSource=(local);Database=测试表;Uid=sa;Pwd=";
protectedvoidPage_Load(objectsender,EventArgse)
{
if(!IsPostBack)
{
ViewState["SortOrder"]="身份证号码";
ViewState["OrderDire"]="ASC";
bind();
}
}
protectedvoidGridView1_Sorting(objectsender,GridViewSortEventArgse)
{
stringsPage=e.SortExpression;
if(ViewState["SortOrder"].ToString()==sPage)
{
if(ViewState["OrderDire"].ToString()=="Desc")
ViewState["OrderDire"]="ASC";
else
ViewState["OrderDire"]="Desc";
}
else
{
ViewState["SortOrder"]=e.SortExpression;
}
bind();
}
publicvoidbind()
{
stringsqlstr="select*from测试表";
sqlcon=newSqlConnection(strCon);
SqlDataAdaptermyda=newSqlDataAdapter(sqlstr,sqlcon);
DataSetmyds=newDataSet();
sqlcon.Open();
myda.Fill(myds,"测试表");
DataViewview=myds.Tables["测试表"].DefaultView;
stringsort=(string)ViewState["SortOrder"]+""+(string)ViewState["OrderDire"];
view.Sort=sort;
GridView1.DataSource=view;
GridView1.DataBind();
sqlcon.Close();
}
}
以上内容来历于互联网,原作者已没法得知,在此感激原作者的忘我贡献。据说很厉害,甚至可以把C#也干掉^_^,不过也很复杂,本来C++已经够复杂的。有人甚至还提出把这个东东引进标准,我觉得基本上不可能的。 |
|