SortedAscending / Descending Styles не работает - PullRequest
1 голос
/ 02 июня 2011

У меня проблемы с отсортированными стилями в моем виде сетки, они просто не применяются, будь то стиль ячейки, стиль заголовка, цвет и т. Д. *

Может быть, это из-за того, как я сортирую свой вид данных? Как будто фреймворк не видит столбец сортированным ...

protected void dgvOpps_Sorting(object sender, GridViewSortEventArgs e)
{
    string sortDirection = "ASC";
    string lastDirection = ViewState["SortDirection"] as string;

    if ((lastDirection != null) && (lastDirection == "ASC"))
        sortDirection = "DESC";

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

    string orderByCol = e.SortExpression;

    DataTable dt;

    if (Session["dgvOppsFilter"] != null)
        dt = ldcrmClient.RetrieveOpportunitiesOfReseller(loggedUser.account_id, (string[])Session["dgvOppsFilter"], new string[0]);
    else dt = ldcrmClient.RetrieveOpportunitiesOfReseller(loggedUser.account_id, new string[0], new string[0]);

    DataView dv = new DataView(dt);
    dv.Sort = e.SortExpression + " " + sortDirection;

    Session.Add("dgvOppsSort", e.SortExpression + " " + sortDirection);

    dgvOpps.DataSource = dv;
    dgvOpps.DataBind();
}

1 Ответ

0 голосов
/ 02 июня 2011

Попробуйте:

 protected void Page_Load(object sender, EventArgs e)
    {
        try
        {
            if (!IsPostBack)
            {
                if (ViewState["sortDirection"] == null)
                    ViewState["sortDirection"] = "asc";

                if (ViewState["sortExpression"] == null)
                    ViewState["sortExpression"] = "your-column-name";
               // Fill the Grid
            }
        }
        catch (Exception ex)
        {
            //Response.Write(ex.Message);
        }
    }

Сортировка:

protected void dgvOpps_Sorting(object sender, GridViewSortEventArgs e)
    {
        if (Convert.ToString(ViewState["sortDirection"]) == "asc")
            ViewState["sortDirection"] = "desc";
        else
            ViewState["sortDirection"] = "asc";


        ViewState["sortExpression"] = e.SortExpression;
// Feetch dt here according to your code
          if (dt.Rows.Count > 0)
            {
                dt.DefaultView.Sort = Convert.ToString(ViewState["sortExpression"]) + " " + Convert.ToString(ViewState["sortDirection"]);
                dgvOpps.DataSource =dt;
                dgvOpps.DataBind();
            }
            else
            {
                dgvOpps.DataSource = null;
                dgvOpps.DataBind();

            }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...