首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Gridview正在排序,但无法添加arrows..How为升序降序的Gridview进行添加?

Gridview正在排序,但无法添加arrows..How为升序降序的Gridview进行添加?
EN

Stack Overflow用户
提问于 2017-04-25 02:43:46
回答 1查看 76关注 0票数 0

这是我用arrows..Gridview添加网格视图的代码,按升序和降序排序,但我无法添加箭头。

代码语言:javascript
复制
protected void grdInformation_RowCreated(object sender, GridViewRowEventArgs e)
{
    if (e.Row != null && e.Row.RowType == DataControlRowType.Header)
    {
        foreach (TableCell cell in e.Row.Cells)
        {
            if (cell.HasControls())
            {
                LinkButton button = cell.Controls[0] as LinkButton;
                HtmlGenericControl gv = new HtmlGenericControl("div");

                Label lnkName = new Label();
                lnkName.Text = button.Text;

                if (button != null)
                {
                    Image imageSort = new Image();
                    imageSort.ImageUrl = "~/images/asc.png";

                    if (grdInformation.SortExpression == button.CommandArgument)
                    {
                        if (grdInformation.SortDirection == SortDirection.Ascending)
                        {
                            imageSort.ImageUrl = "~/images/desc.png";
                        }
                        else
                        {
                            imageSort.ImageUrl = "~/images/asc.png";
                        }
                    }

                    gv.Controls.Add(lnkName);
                    gv.Controls.Add(imageSort);
                    button.Controls.Add(gv);
                    }
                }
            }
        }
    }
}}

在我错的地方,我已经采取了一个事件排序,这是我的代码排序网格视图它是工作很好,但我无法添加箭头到环视图,以上我已经尝试,但它没有添加我的箭头,我如何添加箭头??

我已经尝试了一些文章,但我无法添加箭头与升序和降序,网格视图是排序时点击标题行,但需要显示给用户,他可以排序的基础上升序箭头和降序箭头...

代码语言:javascript
复制
 protected void grdInformation_Sorting(object sender, GridViewSortEventArgs e)
 {
     if (CurrentSortExpression == e.SortExpression.ToString())
     {
         if (CurrentSortDirection == "asc")
             CurrentSortDirection = "desc";
         else
             CurrentSortDirection = "asc";
     }
     else
     {
         CurrentSortExpression = e.SortExpression.ToString();
         CurrentSortDirection = "asc";
     }

     if (e.SortExpression.Trim() == this.SortField)
     {
         this.sortDirection = (this.sortDirection == "DESC" ? "ASC" : "DESC");
      }
      else
      {
          this.sortDirection = "ASC";
      }

      ViewState["SortDirection"] = this.sortDirection;
      this.SortField = e.SortExpression;

      Bindinfo(GetInformation(ddlStatus.SelectedValue, ddlGroups.SelectedValue));
}

请帮帮忙??

EN

回答 1

Stack Overflow用户

发布于 2017-04-25 04:03:45

您可以像这样添加图像。

代码语言:javascript
复制
System.Web.UI.WebControls.Image sortArrow = new System.Web.UI.WebControls.Image();

private void addSortImages()
{
    int columnIndex = 0;

    //set the image url
    sortArrow.ImageUrl = "~/images/asc.png";
    if (mySortDirection == SortDirection.Descending)
    {
        sortArrow.ImageUrl = "~/images/desc.png";
    }

    //check for rows in the gridview
    if (GridView1.Rows.Count > 0)
    {
        //loop all the columns
        foreach (DataControlFieldHeaderCell cell in GridView1.HeaderRow.Cells)
        {
            if (cell.ContainingField.SortExpression == mySortExpression)
            {
                columnIndex = GridView1.HeaderRow.Cells.GetCellIndex(cell);
            }
        }

        //add the image to the correct header cell
        GridView1.HeaderRow.Cells[columnIndex].Controls.Add(sortArrow);
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43595527

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档