1

如何访问 QuestionControl 中的问题实体?

            <ListBox ItemsSource="{Binding QuestionEntityList}">
                <ListBox.ItemTemplate>
                    <DataTemplate>
                        <Grid>
                            <my:QuestionControl x:Name="diskInfo" DataContext={?}/>
                        </Grid>
                    </DataTemplate>
                </ListBox.ItemTemplate>
            </ListBox>
4

2 回答 2

0

我解决了我的问题。我尝试在 UserControl 初始化方法中访问绑定对象(实体),并且 datacontext 总是返回 null。我尝试用户控件加载方法最终访问 DataContext 中的实体:S

对不起我的英语很差...

于 2012-07-11T21:02:24.863 回答
0

我不知道我是否理解你的问题。但是当列表框项目源是问题实体的集合时,每个项目的数据上下文就是问题实体。因此,对于每个项目,列表框都会创建一个问题控件,其 datacontext 设置为 questionentity。

 <ListBox ItemsSource="{Binding QuestionEntityList}">
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <Grid>
                        <my:QuestionControl />//one questioncontrol for each item in the collection, the dataconext is set to this item automatically
                    </Grid>
                </DataTemplate>
            </ListBox.ItemTemplate>
   </ListBox>
于 2012-07-11T05:31:36.787 回答