DataGridView con una colonna DataGridViewComboBoxColumn

di il
4 risposte

DataGridView con una colonna DataGridViewComboBoxColumn

Buongiorno, ho creato una griglia con una colonna che contiene delle comboBox.
Non riesco a capire se posso popolare le comboBox, dopo aver creato la colonna, cosi come si aggiunge un items ad una comboBox classica.
La griglia ha 10 righe e nella colonna delle comboBox, devo inserire una lista di date per ogni riga, da poter poi scegliere nelle combo.
E' possibile? E nel caso come ?
Grazie.

4 Risposte

  • Re: DataGridView con una colonna DataGridViewComboBoxColumn

    Bisogna vedere quale metodo usi per popolare il combobox: è collegato ad una DataTable o no? Mostra un po' di codice.

  • Re: DataGridView con una colonna DataGridViewComboBoxColumn

    La colonna l'ho impostata direttamente dalle proprietà.

    E' una griglia che non è collegata a nessun DataTable e inserisco i dati nelle celle così:

    Griglia("colonna",id_riga).value="test"

    Ovviamente avendo una colonna di comboBox, non è possibile così, dovrei usare almeno l'items, ma non capisco in che modo.

  • Re: DataGridView con una colonna DataGridViewComboBoxColumn

    Quindi, se non usi la proprietà DataSource della DataGridViewComboBoxColumn, devi riferirti ad un oggetto di classe DataGridViewComboBoxCell e popolarlo aggiungendo degli items, poi lo assegni alla cella giusta. Naturalmente dovrai ripeterlo per tutte le righe della griglia.

    Dim cell As New DataGridViewComboBoxCell
    cell.Items.Add("XXXX")
    cell.Items.Add("YYYY")
    ...
    
    griglia.Item("colonna", riga) = cell
  • Re: DataGridView con una colonna DataGridViewComboBoxColumn

    22/11/2022 - grumpy ha scritto:


    Quindi, se non usi la proprietà DataSource della DataGridViewComboBoxColumn, devi riferirti ad un oggetto di classe DataGridViewComboBoxCell e popolarlo aggiungendo degli items, poi lo assegni alla cella giusta. Naturalmente dovrai ripeterlo per tutte le righe della griglia.

    Dim cell As New DataGridViewComboBoxCell
    cell.Items.Add("XXXX")
    cell.Items.Add("YYYY")
    ...
    
    griglia.Item("colonna", riga) = cell

    Perfetto era proprio quello che cercavo. Grazie mille. 

Devi accedere o registrarti per scrivere nel forum
4 risposte