假設我有一個用戶控件,其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