グリッドを含み、グリッド内にコンボボックスがあるデータテンプレートがあります。WPF DataTemplateからコントロールにアクセスする方法
<DataTemplate x:Key="ShowAsExpanded">
<Grid>
<ComboBox Name ="myCombo" Grid.Column="1" HorizontalAlignment="Stretch" VerticalAlignment="Top" Margin="5"
IsSynchronizedWithCurrentItem="True"
ItemsSource="{Binding}"
ItemTemplate="{StaticResource MyItems}">
<ComboBox.ItemsPanel>
<ItemsPanelTemplate>
<VirtualizingStackPanel />
</ItemsPanelTemplate>
</ComboBox.ItemsPanel>
</ComboBox>
</Grid>
</DataTemplate>
私は、スタイリングを通してそのテンプレートを参照するグリッドを持っています。
<Grid>
<ContentPresenter Name="_contentPresenter" Style="{DynamicResource StyleWithCollapse}" Content="{Binding}" />
</Grid>
基本的にDataContextを設定するためにmyComboを使用してコードをアクセスするにはどうすればよいですか?
インテリア。私はかなり新しいwpfです。グリッド上にdatacontextを設定すると、これはテンプレートのコンボボックスにどのように伝播しますか?また、テンプレートに2つのコンボボックスがある場合、各コンボのdatacontextは、それぞれが異なるdatacontextを持つ場合、どのようにバインドされるとしますか? – pdiddy
datacontextは、その子のdatacontextを明示的に設定しない限り、子に伝播されます。したがって、グリッド上にdatacontextを設定すると、ContentPresenter(および以下のすべてのコントロール)はそのdatacontextを共有し、バインドできます。 –
2つの異なるコレクションにバインドする必要があるテンプレートに2つのコンボボックスがある場合、どうすればよいでしょうか? – pdiddy