J'ai le code suivant, que pour une raison que je ne connais pas, ne remplit pas le resultset LINQ à la liste (et il y a beaucoup de résultats dans cette liste), cependant , je le lie au datatable original, ça marche bien. des idées:Liaison linq résultat à la zone de liste
DataTable t = _partitionsDataSet.Tables[0];
var customizedPartitions = from r in t.AsEnumerable()
select new
{
Name = string.Format("{0}[{1}]", r["Name"], r["UserName"]),
BlobId = r["BlobId"].ToString()
};
if (customizedPartitions.Count() > 0)
{
_dataView.Sort = "Name";
listBoxPartitions.DisplayMember = "Name";
listBoxPartitions.ValueMember = "BlobId";
listBoxPartitions.DataSource = customizedPartitions;
}
L'OP dit que la liaison à DataTable fonctionne mais que la liaison à LINQ ne fonctionne pas. Pour que la liaison à DataTable fonctionne, il doit appeler DataBind ailleurs (ce serait bien s'il le spécifiait). –
il s'agit d'une application Windows et vous ne disposez pas de la fonction DataBind(), et vous n'avez pas besoin de l'appeler. il le fait pour vous. à côté, il fonctionne avec datatable sans appeler à aucune fonction. –
@Or A - Je sais comment cela fonctionne, mais vous n'avez pas mentionné dans votre message qu'il s'agit d'une application Windows. –