【发布时间】:2016-08-12 23:26:31
【问题描述】:
我的数据库中有两个表。员工和照片。
Employee 持有一般员工凭证和一个名为 PictureId 的外键,它引用图片表。
Picture 表包含要在我的应用程序中使用的所有员工图像(以及其他一些其他图像)
所以在我的 WPF 应用程序中,我有一个带有自己 ViewModel 的 UserControl。 ViewModel 从数据库中获取员工信息(我使用的是 Entity-Framework 6 Database First 方法)。
public class MyViewModel
{
private databaseEntities context;
public List<employee> EmployeeList { get; set; }
// Constructor
public MyViewModel()
{
context = new databaseEntities();
var queryEmployees = context.employees;
EmployeeList = new List<employee>(queryEmployees);
}
}
视图(用户控件)将这些信息排列成卡片。
<ItemsControl ItemsSource="{Binding EmployeeList}">
<Grid...>
<Image Source="/assets/images/CardBackground.PNG" Stretch="Fill" />
<StackPanel Orientation="Horizontal" HorizontalAlignment="Left" VerticalAlignment="Top">
<!-- How would I fetch the corresponding image data meant to go below? -->
<Image Source="{Binding Path= ??, Converter={StaticResource PictureConverter}}"/>
<TextBlock Text="{Binding FirstName}"/>
<TextBlock Text="{Binding LastName}"/>
</StackPanel>
</Grid>
</ItemsControl>
这就是我的问题所在。我可以使用上面的代码从 Employee 表中检索信息。但是在获取他们的展示图片时,我遇到了难题。
我最初假设员工模型首先必须以与类加载基类相同的方式加载它的依赖项,但显然它并不完全以这种方式工作。
创建和填充单独的列表似乎也没有任何效果。
如何在同一个 ItemsControl 中加载外部表字段?
【问题讨论】:
标签: c# mysql wpf entity-framework-6