none
Esconder colunas de um GridView de acordo com parâmetro RRS feed

  • Pergunta

  • Amigos

    Estou precisando esconder algumas colunas no grid de acordo com uma consulta, tenho a consulta:

    //buscar ultimo dia do Mês
           public void BuscarUltimoDiaDoMes()
           {
     
               //conexao
               SqlConnection Conn = new SqlConnection();
               try
               {
                   //objeto conexao
                   Conn.ConnectionString = ConfigurationManager.ConnectionStrings["Conexao03"].ToString();
                   //cria comando a ser executado
                   SqlCommand cmd = new SqlCommand();
                   cmd.CommandType = CommandType.Text;
                   cmd.CommandText = @"select day(dateadd(day,-1,(dateadd(month,1,convert(char(08),getdate(),126)+'01')))) as dia";
     
                   cmd.Connection = Conn;
                   cmd.Connection.Open();
     
                   //objeto da datatable
                   DataTable dt = new DataTable();
     
                   //objeto leitor
                   SqlDataAdapter da = new SqlDataAdapter(cmd);
                   DataSet ds = new DataSet();
                   da.Fill(ds);
     
                   //mostra a informação 
                   if (ds.Tables[0].Rows[0]["dia"] != null)
                   {
                       //mostra a informação
                       UltimoDiaMes = ds.Tables[0].Rows[0]["dia"].ToString(); 
                   }
     
               }
               catch (Exception ex)
               {
                   //ira exibir o erro que ocorrer em um alerta
                  // ScriptManager.RegisterClientScriptBlock(Page, Page.GetType(), "Erro",
                            //   "alert('ocorreru o erro:" + ex.Message.Replace("\r\n", "").Replace("'", "") + "'); ", true);
               }
               finally
               {
                   Conn.Close();
                   Conn.Dispose();
     
               }
     
           }
    

     

    Estou tentando usar o evento RowDataBound, cada coluna do grid tem um HeaderText que recebe um número, que representa 1 dia do mês, quando eu tenho um Mês com 28 dias eu quero esconder as colunas do grid, estou tentando fazer assim, mais sem sucesso, agradeço se alguém poder ajudar.

     

            protected void GridResumoDiaExpedicao_RowDataBound(object sender, GridViewRowEventArgs e)

            {

     if (UltimoDiaMes !=  e.Row.Cells[29].Text)

                  {

                      e.Row.Cells[29].Visible = false;

                      e.Row.Cells[30].Visible = false;

                      e.Row.Cells[31].Visible = false;

                  }

     

            }

     

     


    segunda-feira, 24 de fevereiro de 2014 23:45

Respostas

  • Se pode fazer isso depois que carregar o Grid

    for (int i = 0; i < GridView1.Rows.Count; i++)
    {
    	GridView1.Rows[i].Cells[0].Visible = false;                
    }
    if (GridView1.HeaderRow != null && GridView1.HeaderRow.Cells.Count > 0)
    {
    	GridView1.HeaderRow.Cells[0].Visible = false;                
    }

    Não precisa ser nesse evento ... !!!!

    O que eu fiz queria tirar a coluna 1 do meu GridView1 ... 


    Fulvio Cezar Canducci Dias

    • Marcado como Resposta Itasouza quinta-feira, 27 de fevereiro de 2014 01:52
    terça-feira, 25 de fevereiro de 2014 04:29