Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [C#] Problema con colonne DataGridView

    salve!
    sto sviluppando un piccolo programma WindowsForm in C#.
    ho creato una classe personale per l'interrogazione di un db mysql.
    ho aggiunto un DataGridView al Form:
    codice:
            private void MainForm_Load(object sender, EventArgs e)
            {
                dataGridViewEntrate.AutoGenerateColumns = false;
                dataGridViewEntrate.DataSource = db.getEntrate();
                dataGridViewEntrate.Columns.Add("entrata_id", "ID");
                dataGridViewEntrate.Columns.Add("entrata_valore", "Valore");
                dataGridViewEntrate.Columns.Add("causale_nome", "Causale");
                dataGridViewEntrate.Columns.Add("conto_nome", "Conto");
                dataGridViewEntrate.Columns.Add("entrata_data", "Data");
                dataGridViewEntrate.Columns.Add("entrata_note", "Note");
                dataGridViewEntrate.Columns[0].Width = 1;
            }
    getEntrate() interroga il db e ritorna una DataTable.
    il problema è che se faccio generare le colonne automaticamente funziona tutto bene.
    se invece le imposto a mano (nn voglio vederle tutte) le righe nn vengono create.
    avete qualche idea?

  2. #2
    risolto:
    codice:
                    dataGridViewEntrate.AutoGenerateColumns = false;
    
                    DataGridViewTextBoxColumn idCol = new DataGridViewTextBoxColumn();
                    idCol.Name = "Valore";
                    idCol.DataPropertyName = "entrata_valore";
                    idCol.ReadOnly = true;
                    idCol.Width = 0;
                    dataGridViewEntrate.Columns.Add(idCol);
    
                    DataGridViewTextBoxColumn entrataCol = new DataGridViewTextBoxColumn();
                    entrataCol.Name = "Valore";
                    entrataCol.DataPropertyName = "entrata_valore";
                    entrataCol.ReadOnly = true;
                    dataGridViewEntrate.Columns.Add(entrataCol);
    
                    DataGridViewTextBoxColumn causaleCol = new DataGridViewTextBoxColumn();
                    causaleCol.Name = "Causale";
                    causaleCol.DataPropertyName = "causale_nome";
                    causaleCol.ReadOnly = true;
                    dataGridViewEntrate.Columns.Add(causaleCol);
    
                    DataGridViewTextBoxColumn contoCol = new DataGridViewTextBoxColumn();
                    contoCol.Name = "Conto";
                    contoCol.DataPropertyName = "conto_nome";
                    contoCol.ReadOnly = true;
                    dataGridViewEntrate.Columns.Add(contoCol);
    
                    DataGridViewTextBoxColumn dataCol = new DataGridViewTextBoxColumn();
                    dataCol.Name = "Data";
                    dataCol.DataPropertyName = "entrata_data";
                    dataCol.ReadOnly = true;
                    dataGridViewEntrate.Columns.Add(dataCol);
    
                    DataGridViewTextBoxColumn noteCol = new DataGridViewTextBoxColumn();
                    noteCol.Name = "Note";
                    noteCol.DataPropertyName = "entrata_note";
                    noteCol.ReadOnly = true;
                    dataGridViewEntrate.Columns.Add(noteCol);
    
                    dataGridViewEntrate.DataSource = db.getEntrate();
                }
                catch (MySqlException ex)
                {
                    MessageBox.Show(ex.Message);
                }

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.