我已经创建并将在此问题中引用的文件包括:
TechnicainSelectionView.xaml
TechnicianSelectionView.cs
TechnicianSelectionViewModel.cs
Technician.cs (Code First Entity)我的TechnicanSelectionView.xaml中有以下xaml
<UserControl xmlns etc... here"
d:DesignHeight="48" d:DesignWidth="300">
<Grid>
<StackPanel>
<Label Content="Select a Technican to run the test" FontWeight="Bold"></Label>
<ComboBox ItemsSource="{Binding Technicians, Mode=TwoWay}"></ComboBox>
</StackPanel>
</Grid>
</UserControl>将ItemSource设置为绑定到其Cannot resolve Technicians due to an unknown DataContext.的状态的技术人员属性
所以如果我们看一下我的TechnicianSelectionView.cs代码隐藏...
public partial class TechnicianSelectionView : UserControl
{
public TechnicianSelectionViewModel ViewModel { get; private set; }
public TechnicianSelectionView()
{
InitializeComponent();
Technician.GenerateSeedData();
ViewModel = new TechnicianSelectionViewModel();
DataContext = ViewModel;
}
}..。我们可以看到,我正在将视图的DataContext设置为我的TechnicianSelectionViewModel ...
public class TechnicianSelectionViewModel : ViewModelBase
{
public ObservableCollection<Technician> Technicians { get; set; }
public TechnicianSelectionViewModel()
{
Technicians = new ObservableCollection<Technician>();
}
public bool IsLoaded { get; private set; }
public void LoadTechnicians()
{
List<Technician> technicians;
using (var db = new TestContext())
{
var query = from tech in db.Technicians
select tech;
foreach (var technician in query)
{
Technicians.Add(technician);
}
}
IsLoaded = true;
}
}技术人员是我ViewModel上的一个属性...
既然已经为视图设置了DataContext,为什么它不能将ViewModel上的技术人员解析为要绑定到的DataContext/属性呢?
编辑:
根据下面的评论中的一个问题。这是设计时的问题,而不是编译时的问题。我应该在一开始就指出这一点。
https://stackoverflow.com/questions/15101696
复制相似问题