Je suis flambant neuf à LINQ et j'essaie de l'utiliser dans mon projet de passe-temps actuel. J'ai un datagridview
où la première cellule de chaque rangée est datagridviewcheckbox
, et la 4ème cellule est une chaîne.LINQ Sélectionnez une certaine cellule dans DataGridView en fonction d'une autre cellule de la ligne
Si la case est cochée, j'ai besoin d'ajouter la valeur de la 4ème cellule à une liste.
Au début, j'essayé:
var selectedID = from c in multiContactLookup.SelectedCells.Cast<DataGridViewCell>()
select multiContactLookup.Rows[c.RowIndex].Cells[4].Value;
Cela ne fonctionne pas parce que les cellules sont vérifiés programatically désélectionné donc c
est jamais une valeur.
Alors j'ai essayé:
var sel2 = from r in multiContactLookup.Rows.Cast<DataGridViewRow>()
where r.Cells[0].Value is true select r.Cells[4].Value;
mais en quelque sorte ma syntaxe est erronée. En utilisant LINQ, comment puis-je sélectionner les lignes où la première cellule est vérifiée, puis sélectionner la valeur de la première cellule? Dois-je séparer cela en deux collections?
Merci!