首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我需要什么来进一步限定绑定的DataContext?

我需要什么来进一步限定绑定的DataContext?
EN

Stack Overflow用户
提问于 2013-02-27 07:47:26
回答 2查看 9.6K关注 0票数 22

我已经创建并将在此问题中引用的文件包括:

代码语言:javascript
运行
复制
TechnicainSelectionView.xaml
TechnicianSelectionView.cs
TechnicianSelectionViewModel.cs
Technician.cs (Code First Entity)

我的TechnicanSelectionView.xaml中有以下xaml

代码语言:javascript
运行
复制
<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代码隐藏...

代码语言:javascript
运行
复制
public partial class TechnicianSelectionView : UserControl
{
    public TechnicianSelectionViewModel ViewModel { get; private set; }

    public TechnicianSelectionView()
    {
        InitializeComponent();

        Technician.GenerateSeedData();

        ViewModel = new TechnicianSelectionViewModel();
        DataContext = ViewModel;
    }
}

..。我们可以看到,我正在将视图的DataContext设置为我的TechnicianSelectionViewModel ...

代码语言:javascript
运行
复制
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/属性呢?

编辑:

根据下面的评论中的一个问题。这是设计时的问题,而不是编译时的问题。我应该在一开始就指出这一点。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15101696

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档