Поделиться через


TransitionCollection Класс

Определение

Представляет коллекцию объектов Transition . Каждый объект Transition представляет собой отдельный переход темы, который является частью библиотеки анимации среда выполнения Windows.

public ref class TransitionCollection sealed : IIterable<Transition ^>, IVector<Transition ^>
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class TransitionCollection final : IIterable<Transition>, IVector<Transition>
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class TransitionCollection final : IIterable<Transition>, IVector<Transition>
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class TransitionCollection : IEnumerable<Transition>, IList<Transition>
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class TransitionCollection : IEnumerable<Transition>, IList<Transition>
Public NotInheritable Class TransitionCollection
Implements IEnumerable(Of Transition), IList(Of Transition)
<TransitionCollection>
    oneOrMoreTransitions
</TransitionCollection>
Наследование
Object Platform::Object IInspectable TransitionCollection
Атрибуты
Реализации

Требования к Windows

Семейство устройств
Windows 10 (появилось в 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (появилось в v1.0)

Примеры

В этом примере показан синтаксис XAML для задания объектного элемента TransitionCollection в рамках установки встроенного свойства UIElement.Transitions .

<Button Content="EntranceThemeTransition Button">
    <Button.Transitions>
        <TransitionCollection>
            
            <!-- This transition just uses the default behavior which is to
                 have the button animate into view from the right. You can
                 make it start from anywhere on the right by using the
                 FromHorizontalOffset property. If you'd rather see a vertical
                 animation, use the FromVerticalOffset property. -->
            <EntranceThemeTransition />
        </TransitionCollection>
    </Button.Transitions>
</Button>
<Grid Background="{StaticResource ApplicationPageBackgroundBrush}">
    <Grid.Resources>
        <Style x:Key="DefaultButtonStyle" TargetType="Button">
            <Setter Property="Transitions">
                <Setter.Value>
                    <TransitionCollection>
                        <EntranceThemeTransition/>
                    </TransitionCollection>
                </Setter.Value>
            </Setter>
        </Style>
    </Grid.Resources>

    <Button Style="{StaticResource DefaultButtonStyle}" 
            Content="EntranceThemeTransition style applied" />

</Grid>

Комментарии

TransitionCollection используется в качестве типа значения для следующих свойств:

Примечание

До Windows 10, версия 1809 (пакет SDK 17763) синтаксис XAML для свойств, имеющих значение TransitionCollection, требует объявления явного объектного элемента TransitionCollection в качестве значения, а затем предоставления объектных элементов в качестве дочерних элементов TransitionCollection для каждой анимации перехода, которую вы хотите использовать. В Windows 10, версия 1809 (пакет SDK 17763) или более поздней версии TransitionCollection поддерживает неявное использование коллекции, поэтому элемент объекта коллекции можно опустить. Дополнительные сведения о неявных коллекциях и XAML см. в руководстве по синтаксису XAML.

Анимации перехода — это предварительно настроенные анимации из библиотеки анимаций среда выполнения Windows. Анимация перехода выполняется автоматически при условиях, с которыми связана анимация перехода, с использованием владельца свойства, для которого в качестве целевого объекта задан Объект TransitionCollection. Анимированные свойства зависят от используемого перехода.

VisualStateGroup.Transitions не использует тип TransitionCollection. VisualStateGroup.Transitions использует встроенную коллекцию (список или вектор) объектов VisualTransition .

Перечисление коллекции на C# или Microsoft Visual Basic

Объект TransitionCollection можно перечислить, поэтому для перечисления элементов в коллекции можно использовать синтаксис для конкретного языка, например foreach в C#. Компилятор выполняет приведение типов автоматически, и вам не нужно явно приводить к IEnumerable<Transition> . Если необходимо выполнить приведение явным образом, например, если вы хотите вызвать GetEnumerator, приведите к IEnumerable<T> с ограничением Transition .

Конструкторы

TransitionCollection()

Инициализирует новый экземпляр класса TransitionCollection .

Свойства

Size

Возвращает размер (количество) коллекции.

Методы

Append(Transition)

Добавляет новый элемент в коллекцию.

Clear()

Удаляет все элементы из коллекции.

First()

Возвращает итератор для итерации элементов в коллекции.

GetAt(UInt32)

Возвращает элемент, расположенный по указанному индексу.

GetMany(UInt32, Transition[])

Извлекает несколько элементов в одном проходе через итератор.

GetView()

Возвращает неизменяемое представление в коллекцию.

IndexOf(Transition, UInt32)

Извлекает индекс указанного элемента.

InsertAt(UInt32, Transition)

Вставляет указанный элемент по указанному индексу.

RemoveAt(UInt32)

Удаляет элемент по указанному индексу.

RemoveAtEnd()

Удаляет последний элемент в коллекции.

ReplaceAll(Transition[])

Сначала очищает коллекцию, а затем вставляет предоставленный массив в качестве новых элементов.

SetAt(UInt32, Transition)

Задает для значения по указанному индексу указанное значение перехода .

Применяется к

См. также раздел