请教在DataGrid标题中加入图标来实现排序的方法??急 请教在DataGrid标题中加入图标来实现排序的方法??急 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 就是在列名旁边加个gif图标,点图标就能实现排序功能,就不知道怎么把图标加在后面!请指教!!~~~ DataGrid是vs2003里的东西吧,没用过,不过我想应该有template模式,应该有headertemplate,直接在这里面加图片就可以了。 你在设置DataGrid时,AllowSorting设为True 绑定列的SortExpression设为你要绑定的字段就可以了。这是菜鸟在做项目时这样写的,希望你可用的上private void Page_Load(object sender, System.EventArgs e) { if(!IsPostBack) { //设置排序表达式 ViewState["SortOrder"] = "LastName"; //设置排序的升降序 ViewState["OrderDire"] = "ASC"; //数据绑定 DataGridDataBind(); } }数据绑定方法private void DataGridDataBind() { //定义数据连接对象,其中数据库连接字符串是在Web.Config文件中定义的 SqlConnection conn = new SqlConnection(ConfigurationSettings.AppSettings["ConnectionSqlServer"].ToString()); //创建数据适配器对象 SqlDataAdapter da = new SqlDataAdapter("select LastName,FirstName,Title,TitleOfCourtesy,BirthDate,City from Employees",conn); //创建DataSet对象 DataSet ds = new DataSet(); try { //填充数据集 da.Fill(ds,"testTable"); //取得填充表格的默认视图 DataView view = ds.Tables["testTable"].DefaultView; //设置排序关键字 string sort = (string)ViewState["SortOrder"] + " " + (string)ViewState["OrderDire"]; //设置排序表达式 view.Sort = sort; //数据邦定 dgPagerState.DataSource = view; dgPagerState.DataBind(); } catch(Exception error) { Response.Write(error.ToString()); } } DataGrid控件的分页事件private void dgPagerState_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e) { //设置DataGrid的当前显示页的索引值为选择的页面索引值 dgPagerState.CurrentPageIndex = e.NewPageIndex; DataGridDataBind(); }DataGrid的排序事件 private void dgPagerState_SortCommand(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e) { //取得排序表达式 string vortExp = e.SortExpression; //如果是当前排序表达式 if(ViewState["SortOrder"].ToString() == vortExp) { //如果原来是降序则改为升序,反之亦然 if((string)ViewState["OrderDire"] == "Desc") ViewState["OrderDire"] = "ASC"; else ViewState["OrderDire"] = "Desc"; } else { //重新设置排序关键字 ViewState["SortOrder"] = e.SortExpression; } DataGridDataBind(); } 排序的功能我已经实现!我要实现点击gif来代替点击文字!忘高手帮忙~ 关于GridView手动绑定格式的问题。 post_postback Gridview 控件里面 无法获得TEXTBOX的值? 这种情况我该怎么办!!! 关于ASP.NET环境配置问题? 打不开asp.net的页面???急急急 我在javascript脚本中捕捉了鼠标的位置,保存在一个数组中,怎么把这些数据发送到服务端? OA系统,自定义流程以及自定交表单的设计 数据绑定求教 table中的子控件怎么使用? 两个StringBuilder变量的问题 FreeTextBox上传大图片问题
请指教!!~~~
,直接在这里面加图片就可以了。
private void Page_Load(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
//设置排序表达式
ViewState["SortOrder"] = "LastName";
//设置排序的升降序
ViewState["OrderDire"] = "ASC";
//数据绑定
DataGridDataBind();
}
}数据绑定方法private void DataGridDataBind()
{
//定义数据连接对象,其中数据库连接字符串是在Web.Config文件中定义的
SqlConnection conn = new SqlConnection(ConfigurationSettings.AppSettings["ConnectionSqlServer"].ToString());
//创建数据适配器对象
SqlDataAdapter da = new SqlDataAdapter("select LastName,FirstName,Title,TitleOfCourtesy,BirthDate,City from Employees",conn);
//创建DataSet对象
DataSet ds = new DataSet();
try
{
//填充数据集
da.Fill(ds,"testTable");
//取得填充表格的默认视图
DataView view = ds.Tables["testTable"].DefaultView;
//设置排序关键字
string sort = (string)ViewState["SortOrder"] + " " + (string)ViewState["OrderDire"];
//设置排序表达式
view.Sort = sort;
//数据邦定
dgPagerState.DataSource = view;
dgPagerState.DataBind();
}
catch(Exception error)
{
Response.Write(error.ToString());
}
} DataGrid控件的分页事件private void dgPagerState_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
{
//设置DataGrid的当前显示页的索引值为选择的页面索引值
dgPagerState.CurrentPageIndex = e.NewPageIndex;
DataGridDataBind();
}DataGrid的排序事件 private void dgPagerState_SortCommand(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
{
//取得排序表达式
string vortExp = e.SortExpression;
//如果是当前排序表达式
if(ViewState["SortOrder"].ToString() == vortExp)
{
//如果原来是降序则改为升序,反之亦然
if((string)ViewState["OrderDire"] == "Desc")
ViewState["OrderDire"] = "ASC";
else
ViewState["OrderDire"] = "Desc";
}
else
{
//重新设置排序关键字
ViewState["SortOrder"] = e.SortExpression;
}
DataGridDataBind();
}
我要实现点击gif来代替点击文字!
忘高手帮忙~