Ich habe eine ListBox, die an eine ListCollectionView namens "Schedules" bindet.Gruppieren von ListBox mit Datum in derselben Zeile wie Daten
<ListBox Grid.Row="2" ScrollViewer.HorizontalScrollBarVisibility="Disabled" ItemsSource="{Binding Schedules}">
<ListBox.GroupStyle>
<GroupStyle>
<GroupStyle.HeaderTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name}" />
</DataTemplate>
</GroupStyle.HeaderTemplate>
</GroupStyle>
</ListBox.GroupStyle>
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Background="Transparent">
<Grid Background="Transparent">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="100"/>
<ColumnDefinition Width="100"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition/>
</Grid.RowDefinitions>
<!--I want my DateTime Grouping Here basically-->
<!--<TextBlock Grid.Column="0" Grid.Row="0" Text="{Binding MyDateTime}" HorizontalAlignment="Left" VerticalAlignment="Center"/>-->
<TextBlock Grid.Column="1" Grid.Row="0" Text="{Binding MyDateTime, StringFormat='t'}" HorizontalAlignment="Left" VerticalAlignment="Center"/>
<TextBlock Grid.Column="2" Grid.Row="0" Text="{Binding SomeText}" TextTrimming="WordEllipsis" LineStackingStrategy="MaxHeight" MaxHeight="20" HorizontalAlignment="Left" VerticalAlignment="Center"/>
</Grid>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
Und in meinem Viewmodel I-Gruppe nur nach Datum (Ich benutze einen Valueconverter, die mir wieder nur ein Datum gibt:
Schedules.GroupDescriptions.Add(new PropertyGroupDescription("MyDateTime", new DateTimeToDateOnlyConverter()));
Ist es möglich, hat die Gruppierung aber auf derselben Anzeige ? Linie wie die anderen Daten Jetzt haben Sie einen Fall, in dem Sie erhalten:
MyDateTime
----------------- Zeit | EINTEXT
----- ------------ Zeit | Sometext
----------------- Zeit | Sametext
MyDateTime2
----------------- Zeit | EINTEXT
Ich möchte es so angezeigt werden:
MyDateTime | Zeit | EINTEXT
| Zeit | EINTEXT
| Zeit | Sametext
MyDateTime | Zeit | EINTEXT
| Zeit | EINTEXT
| Zeit | EINTEXT