假设我有一个用户控件,其datacontext绑定到一个虚拟机。该虚拟机具有MyList列表的属性。如何获取控件父DataContext元素元素数据绑定?
这里面的用户控件我有一个组合框,我想设置以下类型的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>
,但它无法正常工作。
如何解决此问题?
你为什么试图在这里做Element to Element绑定?你不只是试图将这个ComboBox的源码绑定到ViewModel上的MyList吗?如果是这样,你应该能够做到这一点:ItemsSource =“{Binding MyList}”也许我不明白你的意思是'父',你能显示更多的代码吗? – JSprang 2010-11-09 19:42:06