Последовательная анимация элементов в ItemsControl - PullRequest
1 голос
/ 15 июня 2009

Итак, в качестве простого примера, если у вас есть ItemsControl, подобный приведенному ниже, который динамически создает его содержимое. Как я могу добавить триггеры, чтобы каждый элемент анимировался внутри и имел BeginTime на основе своего индекса в списке.

Я попытался расширить кнопку, чтобы она содержала время задержки, а затем связать BeginTime анимации, содержащейся в триггерах кнопок ControlTemplate, там есть проблемы из-за замораживания анимаций.

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

Есть идеи?

отправная точка для моей разметки:

<Window.Resources>
    <ResourceDictionary >
        <Collections:ArrayList x:Key="ItemsList">
            <System:String>OPTIONS</System:String>
            <System:String>STICKERS</System:String>
            <System:String>STYLING</System:String>
            <System:String>WHEELS</System:String>
            <System:String>INTERIOR</System:String>
            <System:String>ROOF</System:String>
            <System:String>COLOURS</System:String>
            <System:String>VERSION</System:String>
        </Collections:ArrayList>
    </ResourceDictionary>
</Window.Resources>

<Grid>
    <ListView ItemsSource="{StaticResource ItemsList}">
        <ListView.Style>
            <Style>
                <Setter Property="ListView.ItemTemplate">
                    <Setter.Value>
                        <DataTemplate>
                            <Button Content="{Binding}" />
                        </DataTemplate>
                    </Setter.Value>
                </Setter>
            </Style>
        </ListView.Style>
    </ListView>
</Grid>

Приветствие J

1 Ответ

1 голос
/ 16 июня 2009

Вероятно, нет способа сделать это через XAML.

Скорее, заполните ListView в своем коде C # и создайте раскадровки и триггеры в коде. Идея состоит в том, чтобы расширить Button, чтобы иметь поле «Next Button To Show», сыграйте свою раскадровку для показа анимации, затем нажмите следующую кнопку, чтобы сделать то же самое, пока не дойдете до последней кнопки, где «NextButton == null»

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...