我正在尝试使用dataContext来填充组合框但总是一无所获:
EntityQuery<Tests> testQ = myDomainContext.GetTestQuery().Where(t => t == 5);
LoadOperation<Tests> loadOp = myDomainContext.Load(testQ)
comboxBoxTest.ItemSource = loadOp.Entities.Select(t => t.Name).Distinct().ToList();
有人可以告诉我这里有什么问题吗?
答案 0 :(得分:1)
您可能无法加载实体。尝试
EntityQuery<Tests> testQ = myDomainContext.GetTestQuery().Where(t => t == 5);
LoadOperation<Tests> loadOp = myDomainContext.Load(testQ);
loadOp.Completed += (o, e) =>
{
comboxBoxTest.ItemSource = loadOp.Entities.Select(t => t.Name).Distinct().ToList();
};
或者
myDomainContext.Load(testQ, new Action<LoadOperation<Tests>>(result =>
{
comboxBoxTest.ItemSource = result.Entities.Select(t => t.Name).Distinct().ToList();
}), null);
答案 1 :(得分:1)
正如您所知, RIA
中的所有操作都是异步的。在执行查询时你应该意识到这一点。
由于这些原因,你必须使用回调方法(@ Zabavsky的答案很好)。
另外,我建议您使用 MVVM
模式而不是代码隐藏乱码。这将使您的代码和逻辑更清晰。