WP7 Используя связывание, как я могу управлять данными, относящимися к предыдущим элементам - PullRequest
0 голосов
/ 22 августа 2011

Когда я связываюсь с коллекцией со списком, есть ли какой-либо способ, которым я могу управлять выводом на основе предыдущих элементов, которые отображались в коллекции.

Например, в следующей привязке

<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, если она идентична предыдущей), есть способ, которым я могу сделать это без необходимости делать определенные учтите это, когда я соберу коллекцию.

Поскольку так много происходит автоматически, как это было со списком, привязанным к этой коллекции, я не вижу другого пути, пока я не обработаю это во время создания коллекции ... потому что после этого у меня мало контроля.

Спасибо

1 Ответ

0 голосов
/ 22 августа 2011

Можно ли каким-либо образом управлять выводом на основе предыдущих элементов, которые отображались в коллекции?

номер

Вы должны сделать такие изменения при создании коллекции. Подумайте, может ли любая помощь помочь использование DataTemplateSelector .

...