none
Ordenar Datagrid

    Question

  • Galera como eu faço para ordenar uma datagrid pelo codigo.?

    é que faço algumas somas com os valores antes de colocar na grid.. e não da para fazer isso o select , gostaria de ordenar no codigo..

     

    valeu

    Wednesday, March 14, 2007 9:06 PM

Answers

  • Amigo,

    aki vai um exemplo:
      private void Bind()
      {
       string conStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=";
       conStr += Server.MapPath("demo.mdb");
       System.Data.OleDb.OleDbConnection dbCon = new System.Data.OleDb.OleDbConnection(conStr);
       dbCon.Open();

       string sql = string.Empty;
         
       sql = "SELECT * FROM Products WHERE ProductName";
       System.Data.OleDb.OleDbDataAdapter daSrc = new System.Data.OleDb.OleDbDataAdapter(sql, dbCon);
       
       DataTable oTable1 = new DataTable("Products");
       daSrc.Fill(oTable1);
          
       oTable1.DefaultView.Sort = ( (ViewState["sort"] != null)? ViewState["sort"].ToString() : "id");
       DataGrid1.DataSource = oTable1.DefaultView;
       DataGrid1.DataBind();

       
      }
    Essa funcao carrega o grid e ordena

      private void DataGrid2_SortCommand(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
      {
       ViewState["sort"] = e.SortExpression;
       Bind();
      }
    Esse é o evento onSortCommand que ocorre qdo uma coluna é selecionada, pra ordenar o grid basta definir a propriedade allowSorting como true e adicionar o evento onSortCommand.



    Espero ter ajudado,


    []'s




















    Thursday, March 15, 2007 12:50 PM

All replies

  • tenta usar o

    gridview.sort()

    ou então cria um dataview e usar o .sort dele tbm

    Abraços,
    Espero ter ajudado

    Thursday, March 15, 2007 11:37 AM
  • Mauro ,

    Voce tem um exemplo de como usar o sort(), não estou acertando

    valeu

    Thursday, March 15, 2007 11:59 AM
  • Amigo,

    aki vai um exemplo:
      private void Bind()
      {
       string conStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=";
       conStr += Server.MapPath("demo.mdb");
       System.Data.OleDb.OleDbConnection dbCon = new System.Data.OleDb.OleDbConnection(conStr);
       dbCon.Open();

       string sql = string.Empty;
         
       sql = "SELECT * FROM Products WHERE ProductName";
       System.Data.OleDb.OleDbDataAdapter daSrc = new System.Data.OleDb.OleDbDataAdapter(sql, dbCon);
       
       DataTable oTable1 = new DataTable("Products");
       daSrc.Fill(oTable1);
          
       oTable1.DefaultView.Sort = ( (ViewState["sort"] != null)? ViewState["sort"].ToString() : "id");
       DataGrid1.DataSource = oTable1.DefaultView;
       DataGrid1.DataBind();

       
      }
    Essa funcao carrega o grid e ordena

      private void DataGrid2_SortCommand(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
      {
       ViewState["sort"] = e.SortExpression;
       Bind();
      }
    Esse é o evento onSortCommand que ocorre qdo uma coluna é selecionada, pra ordenar o grid basta definir a propriedade allowSorting como true e adicionar o evento onSortCommand.



    Espero ter ajudado,


    []'s




















    Thursday, March 15, 2007 12:50 PM