COMO ESCOLHER QUAIS CAMPOS DO BANCO VAO DATAGRIDEW

FFECHER 26/06/2023 09:22:17
#501541
Bom dia
Definitivamente resolvi migrar meus sistemas c# . To tendo caminhao de duvidas nos primeiros passos. Como defino as colunas no datagridview pois defino as colunas que quero mas quando conecto com banco de dados ele deixa as colunas que inclui e coloca todas as colunas do banco de dados.
Agradeço a Ajuda
Fernando Fecher
OMAR2011 26/06/2023 19:17:57
#501543
Será que não esta usando o dataGridView1.DataSource = clientes tipo assim.
Quando Cria as Colunas e preenche o Datagridview como o DataSource acontece isso.
Use o while (dr.Read())
FFECHER 27/06/2023 09:20:47
#501544
Estou fazendo assim mesmo dataGridView1.DataSource = clientes nao sei fazer desse outro exemplo
SINCLAIR 27/06/2023 17:58:12
#501546
Colega,

No comando SQL que você filtra os dados, experimente colocar os campos (colunas) que deseja que apareçam no Data Grid, ou seja em "clientes".
Por exemplo: select nomecli as nome_do_cliente, codcli as codigo_cliente from sua_tabela where (suas_condições)

Se "clientes" tiver o SQL com a lista de colunas desejada, o seu código dataGridView1.DataSource = clientes deverá mostrar somente as colunas filtradas no SQL.

Particularmente nunca utilizei, pois não trabalho com C#, mas a "lógica" me parece ser esta.
KERPLUNK 27/06/2023 18:58:13
#501547
O que eu faria, seria ter uma entidade em uma lista genérica. As propriedades que você quer mostrar no grid, você adiciona um decorador Browsable(bool)
FFECHER 27/06/2023 19:15:27
#501548
Sinclair

Cheguei a pensar nessa situacao mas achei que tivesse uma solução que nao tivesse que fazer uma lista com menos campos estava tentando ver se existia alguma propriedade que tornasse possivel seria o esperado ja que tal opcao existia no vb6. Kerplunk confesso que sua solução para mim equivale a um burro olhando submarino nem sei por onde comecar.
Valeu ajuda amigos
Vou seguir a dica do Sinclair
muito obrigado a todos.
KERPLUNK 27/06/2023 21:56:24
#501549
Eu tenho vários vídeos no youtube mostrando como fazer isso... Veja aqui
Sugiro que assista principalmente o basicão para entender OOP direitinho
FFECHER 28/06/2023 13:22:12
#501550
Valeu vou ver sim to foram a um tempao de programação e daqui realmente to bem mais por fora do que antes
Agradeco a todos
Omar esqueci de mencionar sua ajuda obrigado mas como expliquei acima ainda to meio engatinhando nessas solucoes
grato
Fernando Fecher
NILSONTRES 29/06/2023 12:19:25
#501552
Assim, se você quiser de fato utilizar datasource, a ideia do SINCALIR é ótima, porque dessa forma você da nome as colunas independentemente do nome no banco de dados.
A sugestão do OMAR2011 eu utilizo e em meus testes não vi muita diferença em desempenho em relação ao datasource.
Mas de qualquer forma eu recomendo passar pelos vídeos do KERPLUNK, ali você tem um rico e indispensável material .
OMAR2011 30/06/2023 17:54:33
#501554
Resposta escolhida
Using;
FbConnection con = new FbConnection("User=SYSDBA; Password=masterkey;DataSource=localhost; Database=C:\\Program Files\\Firebird\\Firebird_2_5" +
"\\BRAS2002.fdb ");
try {
con.Open();
string sql = ("Select cod,cli from clientes where cod= \'"
+ (txtid.Text + "\' order by cod"));
FbCommand CMD = new FbCommand(sql, con);
// Dim da As FbDataAdapter = New FbDataAdapter(CMD)
FbDataReader dr;
dr = CMD.ExecuteReader;
DgvJogos.Rows.Clear();
while (dr.Read) {
// If dr.HasRows Then
DgvJogos.Rows.Add(dr.Item["cod"], dr.Item["cli"]);
}

dr.Close();
}
catch (Exception ex) {
}

EndUsing;
Mais ou menos isso.
FFECHER 30/06/2023 17:57:42
#501555
Muito obrigado a todos
Página 1 de 2 [11 registro(s)]
Tópico encerrado , respostas não são mais permitidas