Façon la plus simple d'utiliser un DatagridView avec Linq to SQL
Je n'ai jamais utilisé les datagrids et, mais aujourd'hui je suis tombé sur un problème simple et a décidé de "databind" trucs à terminer plus rapidement, cependant, j'ai trouvé que ça ne fonctionne pas comme je m'y attendais.
Je pensais qu'en faisant quelque chose d'aussi simple que:
var q = from cust in dc.Customers
where cust.FirstName == someString
select cust;
var list = new BindingList<Customer>(q.ToList());
return list;
Puis à l'aide de cette liste dans un DataGridView1.Source de données était tout ce dont j'avais besoin, cependant, peu importe combien j'ai de google, je ne peux pas trouver un bon exemple sur la façon de remplir (pour ajouter/modifier/modifier) les résultats d'une seule table de la requête dans un DataGridView1. La plupart des échantillons parler ASP.NET ce qui me manque, c'est WinForms.
Des idées?
Je suis tombé sur d'autres postes et de la GetNewBindingList, mais qui ne semble pas changer grand-chose.
Ce qui me manque (il doit être évident)?
Vous devez vous connecter pour publier un commentaire.
Vous pouvez simplement lier le IQueryable résultat de la DataGridView, vous ne savez pas pourquoi vous en la convertissant en une BindingList, est-il une raison spécifique pour cela?
Vous pourriez avoir un coup d'oeil à la
TableList<T>
de ce post - basé surBindingList<T>
, mais avec des crochets dans les données de contexte.Essayer, voir la réponse de thedugas: impossible-edition-datagridview-peuplé-avec-les résultats-de-linq-requête
À côté d'une BindingList, il utilise un BindingSource. Et au lieu de la
MergeEntry
classe que vous utilisez votreCustomer
classe.Juste lier.
Pas besoin de le convertir à la liste.
Essayez ceci: