ich bin gerade bei einem technischen Problem und bräuchte kurz eure Hilfe:
In meiner Anwendung ist eine Listbox mit einem Wrappanel als ItemsPanel. Dieses Wrappanel hat ein DataTemplate, um die einzelnen Items grafisch darstellen zu können. Via einem Slider und einer ViewBox ist zusätzlich ein Zoom implementiert.
<ListBox x:Name="listbox2" SelectionMode="Extended"
ItemsSource="{Binding Converter={StaticResource GroupingItemsControlConverter},
ConverterParameter={StaticResource SimpleGroupingItemsControlConverterParameter}}"
SelectionChanged="ListBox_SelectionChanged"
Height="280" Width="570"
HorizontalAlignment="Left" VerticalAlignment="Top">
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<toolkit:WrapPanel Orientation="Horizontal" Width="540" Loaded="WrapPanel_Loaded" />
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
</ListBox>
...
<DataTemplate>
<Viewbox Stretch="UniformToFill">
<Border BorderBrush="DarkGray" BorderThickness="1" Margin="5,5,5,5">
<StackPanel Orientation="Vertical" Width="100" Height="50">
...
</StackPanel>
</Border>
</Viewbox>
</DataTemplate>
...
Meine Ziel ist es jetzt, zusätzlich zu diesen Funktionalitäten eine Gruppierung einzubauen. Wenn ich darin z.B. 15 Tiere habe, haben diese jeweils eine bestimmte Spezies (Fisch, Katze, Hund). Die Items sollen bei aktivieren der Gruppierung mit einem Expander angezeigt werden.
Die gängigen Lösungen im Internet für Gruppierungen funktionieren leider nicht. Sobald ich den Wert ItemWidth oder ItemHeight des Wrappanels setze, wird auch das Item für die Gruppierung auf die Breite gesetzt. Das darf aber nicht sein, da die Gruppe die ganze Zeile ausfüllen muss.
Wie kann ich innerhalb eines Wrappanels in einer Listbox so etwas umsetzen? Hat so etwas schon mal jemand gemacht?
Würde mich über Hilfe freuen.
mfg
Easy