Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Bernardino Ferreira

[Resolvido] Ocultar Coluna DataGrid

Recommended Posts

Pessoal,

tenho um DataGrid que e criei as colunas e preenchi o mesmo através de código (não sei se está correta a maneira).

Quero que a última coluna que eu criei fique OCULTA. Como faço isso? Pelo amor de Deus, ninguém t ame ajudando, me socorram.

Agradeço. Segue o código atual.

 

            //Seleciona dados
            Database conn = new Database();
            conn.openDatabase();
            string sql = "SELECT * FROM Request";
            SqlCeDataReader drRequest = conn.execDatabase(sql);

            DataTable dtRequest = new DataTable();
           
            // Cria Colunas
            DataColumn cli_cod = new DataColumn("cli_cod", Type.GetType("System.Int32"));
            dtRequest.Columns.Add(cli_cod);
            DataColumn cli_razao = new DataColumn("cli_razao", Type.GetType("System.String"));
            dtRequest.Columns.Add(cli_razao);
            DataColumn unik = new DataColumn("unik", Type.GetType("System.String"));
            dtRequest.Columns.Add(unik);

            // Cria estilo da tabela
            DataGridTableStyle tsRequest = new DataGridTableStyle();
            DataGridTextBoxColumn Scli_cod = new DataGridTextBoxColumn();
            Scli_cod.MappingName = "cli_cod";
            Scli_cod.HeaderText = "Código";
            tsRequest.GridColumnStyles.Add(Scli_cod);

            DataGridTextBoxColumn Scli_razao = new DataGridTextBoxColumn();
            Scli_razao.MappingName = "cli_razao";
            Scli_razao.HeaderText = "Cliente";
            tsRequest.GridColumnStyles.Add(Scli_razao);

            DataGridTextBoxColumn Sunik = new DataGridTextBoxColumn();
            Sunik.MappingName = "unik";
            Sunik.HeaderText = "UID";
            tsRequest.GridColumnStyles.Add(Sunik);

            // Limpa e adiciona novo estido de tabela ao GRID
            dgvRequest.TableStyles.Clear();
            dgvRequest.TableStyles.Add(tsRequest);

            // Array para manipulação de dados do grid
            string[] dados = new string[3];
            
            while (drRequest.Read())
            {
                dados[0] = drRequest[0].ToString();
                dados[1] = drRequest[1].ToString();
                dados[2] = drRequest[2].ToString();

               dtRequest.Rows.Add(dados);
            }

            dgvRequest.DataSource = dtRequest;

            //Fecha conexão
            conn.closeDatabase();

Compartilhar este post


Link para o post
Compartilhar em outros sites

nossa... eu faco de outro jeito...

codigo em vb.net.. eh soh converter para c#


Public Function fDa(ByVal sql As String) As FbDataAdapter
        addHist("fDa(" & sql & ")")
        Dim command As FbCommand
        Dim ada As FbDataAdapter
        Try
            command = New FbCommand(sql, fbCon)
            ada = New FbDataAdapter(command)
            Return ada
            ada.Dispose()
        Catch ex As FbException
            MsgBox(sql & vbCrLf & vbCrLf & ex.ToString)
            Log(ex.Message, ex.ToString, ex.ErrorCode & " - Nao executou sql - DA")
            fDa = Nothing
        End Try
    End Function

    private sub CarregaGrid()
        Dim da as SqlDataAdapter
        da = fDa("SELECT * FROM Request")
        ds.Clear()
        da.Fill(ds, "request")
        dg.DataSource = ds.Tables("request")
        dg.Refresh()
        dg.Columns.Item(dg.Columns.Count - 1).Visible = False 'esconde a ultima coluna do data grid..
    End Sub

 

espero ter ajudado.. boa sorte

Compartilhar este post


Link para o post
Compartilhar em outros sites

OK.

O DS é um DataSet. Tudo bem.

Agora se eu usar da maneira que você passou o HeaderText vem o que está no Banco. Agora o detalhe.

Não consigo ver a propriedade Visible, não sei se é porque eu estou usando Compact Framework.

 

Ah... no DataGrid nem existe a propriedade Columns tem que ir em Tables e depois em columns.. mas mesmo assim não tem o visible.

Compartilhar este post


Link para o post
Compartilhar em outros sites

no select você ja poder dar o label que quiser..

 

por exemplo

 

select CodProd As 'Codigo do Produto', Desc as Descricao, Pr1 as 'Preco de Venda' from produtos

 

bom, na verdade eu uso DataGridView, com datagrid nao sei te dizer pois nunca usei..

 

da uma pesquisada ae por DefaultCellStyles..

 

flw

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal,

eu posso também colocar a coluna com Width = 0.

Mas creio que seja uma prátiva indevida.

Será que ninguém sabe como ocultar uma coluna no DataGrid compact framework?

Pelo amor de Deus, preciso disso pra solucionar todos os meus problema.

 

Agradeço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa, beleza?

 

Rapaz, eu não manjo em VB.NET, mas acho q é a mesma coisa com C#.

 

grid.columns[INDICE].visible = false;

se fizer isso você irá esconder a coluna.

 

Abraços.

 

Pessoal,

eu posso também colocar a coluna com Width = 0.

Mas creio que seja uma prátiva indevida.

Será que ninguém sabe como ocultar uma coluna no DataGrid compact framework?

Pelo amor de Deus, preciso disso pra solucionar todos os meus problema.

 

Agradeço

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ixi, então não sei não..

 

=(

 

vou ficar te devendo.

 

Mas eu não to fazendo em VB.NET e sim C#.

Só que é compact framework.. programa pra palm.

E desta maneira que você citou acima eu não consigo.

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.