如何在绑定表达式中使用两个datacontexts?

时间:2011-12-05 17:29:24

标签: silverlight

在这种情况下,数据网格绑定到dtos列表,并且在编辑期间,组合框需要显示活动用户列表,以及绑定到该行的dto上的活动用户列表。由于模型上存在所有可用用户的列表,因此需要对每行数据网格进行索引。为此,我需要引用两个数据上下文。怎么做?

这是xaml

 <sdk:DataGridTemplateColumn Header="UW" Width="150">
                                    <sdk:DataGridTemplateColumn.CellTemplate>
                                        <DataTemplate>
                                            <c:ComboBox Width="145" Height="25" DisplayMemberPath="FullName" SelectedValuePath="Id"
                                    ItemsSource="{Binding Source={StaticResource cc}, Path=AvailableUnderwritersPerProposal[BidVersionId]}" 
                                    SelectedValueProper="{Binding Path=UnderwriterId, Mode=TwoWay}" 
                                    IsEnabled="{Binding Source={StaticResource cc}, Path=DataContext.HasPermissionsToEditUnderwriter}"
                                    HorizontalAlignment="Left"/>
                                        </DataTemplate>
                                    </sdk:DataGridTemplateColumn.CellTemplate>
                                </sdk:DataGridTemplateColumn>

这一行 AvailableUnderwritersPerProposal [BidVersionId]是问题,因为BidVersionId位于数据网格的datacontext上,而AvailableUnderwritersPerProposal是一个级别。

1 个答案:

答案 0 :(得分:1)

只是想,

ItemsSource="{Binding Source={StaticResource cc}, Path=AvailableUnderwritersPerProposal[{Binding BidVersionId}]}"

手指交叉!!

迪帕克。