gridview 给排序字段添加箭头

来源:互联网 发布:hp7110打印机清零软件 编辑:程序博客网 时间:2024/05/21 10:26
 

        protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.Header)//如果是表头,则执行如下操作
            {
                foreach (TableCell tc in e.Row.Cells)
                {
                    //这种方法直接新加一个控件,也可以换成图片              
                    if (tc.Controls.Count > 0)//这里要判断一下此时是不是已经生成了linkbutton
                    {
                        string s1 = ((LinkButton)tc.Controls[0]).Text;
                        //样式Webdings是123都有自己对应的图片
                        ((LinkButton)tc.Controls[0]).Text = s1.Replace(s1, s1 + "<font face='Webdings'>5</font>");
                        //倒序的样式
                        if (tc.Controls.Count > 0 && tc.Controls[0].GetType().ToString() == "System.Web.UI.WebControls.DataControlLinkButton")
                        {
                            if (((LinkButton)tc.Controls[0]).CommandArgument.ToString() == ViewState["OrderField"].ToString())
                            {
                                string s2 = ((LinkButton)tc.Controls[0]).Text;
                                if (ViewState["OrderDire"].ToString() == "DESC")
                                {
                                    ((LinkButton)tc.Controls[0]).Text = s2.Replace("5", "6");
                                }
                            }
                        }
                    }
                }
            }

            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                e.Row.Attributes["style"] = "cursor:pointer;";            
            }
        }