j'ai chargé un DataGridView appelé dgvPrint
avec une liste qui récupère la base de données comme suit:Comment changer le type de colonne DataGridView après la liaison
dgvPrint.DataSource = ReservedServices.GetAll();
Le résultat est comme ci-dessous:
ColonneWorker
et colonne ServiceType
sont des entiers qui se réfèrent aux clés primaires de deux tables.
Comment puis-je modifier le type de colonne ServiceType
et Worker
du texte simple au DataGridViewComboBoxColumn
?
Remarque1: Les valeurs actuelles de ces deux colonnes sont les ValueMember
des zones de liste déroulante correspondantes.
Note2: Je souhaite conserver les données et les positions d'autres colonnes.
J'ai utilisé ce code pour Worker
colonne, mais il ne fonctionne pas correctement:
DataGridViewComboBoxColumn colbox;
colbox = (DataGridViewComboBoxColumn)dgvPrintServices.Columns[4];
colbox.DataSource = WorkerServices.GetAll(); // a list of worker with Id and Name
colbox.DisplayMember = "Name";
colbox.ValueMember = "Id";
dgvPrint.Columns.Add(colbox);
Alors vous voulez aussi voir le Combobox en mode lecture? –
En fait NON, en particulier je veux changer le travailleur –
Donc, vous obtenez actuellement un TextBox lorsque vous modifiez la colonne travailleur? –