У меня есть динамическое количество элементов в сетке и я использую шаблон для визуализации:
<UserControl x:Class="MUSTANG.GUI.TableModule.Controls.ColumnAxis"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d" >
<UserControl.Resources>
<Style TargetType="ListViewItem">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ListViewItem">
<!-- Here will be the layout of the elements from the ListView -->
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style TargetType="ListView">
<Style.Triggers>
<DataTrigger Binding="{Binding Path=TreeItemChildren.Count}" Value="0">
<Setter Property="Visibility" Value="Collapsed"/>
</DataTrigger>
</Style.Triggers>
</Style>
</UserControl.Resources>
<ListView ItemsSource="{Binding Path=RootItem.TreeItemChildren}" Padding="{Binding Path=RootItem.PaddingFixWindows6}">
<ListView.ItemsPanel>
<ItemsPanelTemplate>
<!-- Somewhere here should be a GridSplitter -->
<StackPanel Orientation="Horizontal" HorizontalAlignment="Stretch">
</StackPanel>
</ItemsPanelTemplate>
</ListView.ItemsPanel>
</ListView>
</UserControl>
Теперь я хочу использовать GridSplitter для каждого элемента в ListView. Все, что я пробовал, не работает, потому что ItemsPanelTemplate ожидает только одного VisualTree (поэтому я не могу поместить Gridsplitter под StackPanel).
Есть ли возможность сделать это по-другому? Возможно, из-за-кода? Мне нужно решить основную проблему, заключающуюся в том, что у меня динамическое количество элементов, и я хочу использовать какие-то разделители между ними.
Справочная информация: я должен использовать шаблон из-за рекурсивных вызовов. В исходном коде после первой сетки находится другой ListView.