如何获取元素到元素数据绑定的控制父DataContext?

时间:2010-11-09 19:02:11

标签: silverlight-4.0

假设我有一个用户控件,哪个datacontext绑定到VM。此VM具有列表MyList的属性。

在这个用户控件中我有一个ComboBox,我想设置以下类型的xaml

   <Grid x:Name="LayoutRoot" Background="White">
            <StackPanel HorizontalAlignment="Stretch">
                <sdk:DataGrid ItemsSource="{Binding YourList}"  IsReadOnly="True" AutoGenerateColumns="False" >
                    <sdk:DataGrid.Columns>                      
                        <sdk:DataGridTextColumn  Header="Name"   Binding="{Binding Name}" />
                        <!-- ...... -->
                        <sdk:DataGridTemplateColumn  Header="User" >
                            <sdk:DataGridTemplateColumn.CellTemplate>
                                <DataTemplate>
                                    <ComboBox ItemsSource="{Binding ElementName=LayoutRoot, Path=DataContext.MyList}" DisplayMemberPath="Value" SelectedValuePath="Key" SelectedValue="{Binding UserID}" ></ComboBox>
                                </DataTemplate>
                            </sdk:DataGridTemplateColumn.CellTemplate>
                        </sdk:DataGridTemplateColumn>

                    </sdk:DataGrid.Columns>
                </sdk:DataGrid>
            </StackPanel>
    </Grid>

但它不起作用。

如何解决此问题?

2 个答案:

答案 0 :(得分:1)

这形成了我。这是DataGrid中的ComboBox的ItemSource:

      ItemsSource="{Binding RelativeSource={RelativeSource AncestorType=sdk:DataGrid}, 
Path=DataContext.Teams}"> 

答案 1 :(得分:0)