DataTemplate内のDataTemplatesElectorを使用できますか?
-
14-10-2019 - |
質問
スタックパネルを使用してアイテムを使用してアイテムのリストを表示しています。
各行にラベルを表示したいのですが、ラベルの左側のコンテンツをDateTemplateselectorによって定義することをお勧めします。 TemplatesElectorによって生成された各データセテンプのラベルを再定義したくありません。
これは可能ですか?
<ItemsControl ItemsSource="{Binding Path=Values}" >
<ItemsControl.Resources>
<v:MyTemplateSelector x:Key="myTemplateSelector"></v:MyTemplateSelector>
</ItemsControl.Resources>
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel></StackPanel>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<WrapPanel>
<Label>Test: </Label>
<!--What goes here should be defined by myTemplateSelector-->
</WrapPanel>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
解決
私はそれを考え出した。解決策は、ContentTemplateselector属性を備えたContentSpresenter要素を使用することでした。
<DataTemplate>
<WrapPanel>
<Label>Test: </Label>
<ContentPresenter
ContentTemplateSelector="{StaticResource ResourceKey=myTemplateSelector}">
</ContentPresenter>
</WrapPanel>
</DataTemplate>
所属していません StackOverflow