Когда я связываюсь с коллекцией со списком, есть ли какой-либо способ, которым я могу управлять выводом на основе предыдущих элементов, которые отображались в коллекции.
Например, в следующей привязке
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
<ListBox x:Name="AgendaListbox"
ItemsSource="{Binding AgendaItems2}"
ItemTemplate="{StaticResource EventDisplay3}"/>
</Grid>
Где шаблон выглядит следующим образом
<DataTemplate x:Key="EventDisplay3">
<Grid>
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
<RowDefinition/>
<RowDefinition Height="50"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition Width="10"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding DateTimeDayString}" Style="{StaticResource PhoneTextSmallStyle}"
Grid.Row="0" Grid.Column="0"/>
<TextBlock Text="{Binding DisplayTimeString}" Foreground="{Binding DisplayColor}"
Grid.Row="1" Grid.Column="0" Style="{StaticResource PhoneTextLargeStyle}"/>
<TextBlock Text="{Binding Details}" TextWrapping="Wrap" Style="{StaticResource PhoneTextNormalStyle}"
Grid.Row="0" FontSize="30" Grid.Column="2" Grid.RowSpan="3"
VerticalAlignment="Center" />
<TextBlock Text="{Binding Location}" Style="{StaticResource PhoneTextSmallStyle}"
Grid.Row="3" Grid.Column="0"/>
</Grid>
</DataTemplate>
Если я хочу изменить отображение на основе предыдущего отображаемого элемента (например, сказать, что я хочу удалить привязку DateTimeString, если она идентична предыдущей), есть способ, которым я могу сделать это без необходимости делать определенные учтите это, когда я соберу коллекцию.
Поскольку так много происходит автоматически, как это было со списком, привязанным к этой коллекции, я не вижу другого пути, пока я не обработаю это во время создания коллекции ... потому что после этого у меня мало контроля.
Спасибо