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


CompositionInteractionSourceCollection Класс

Определение

Коллекция источников взаимодействия.

Это коллекция источников взаимодействия, связанных с заданным InteractionTracker. Единственным допустимым элементом этой коллекции является VisualInteractionSource. Каждый VisualInteractionSource должен иметь уникальный визуальный элемент проверки попадания (источник). Каждый VisualInteractionSource настраивается отдельно для отправки нужных входных данных в InteractionTracker.

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

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

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

Примеры

void SetupMultipleSourceInteractionTracker(Visual horizontalVisual, Visual verticalVisual, Visual contentVisual)
{
  //
  // Create the InteractionTracker and set its min/max position.  These could 
  // also be bound to expressions.  Note: The scrollable area can be changed from either 
  // end to facilitate content updates/virtualization.
  //

  _tracker = InteractionTracker.Create(_compositor);

  _tracker.MaxPosition = new Vector3(
    contentVisual.Size.X - viewportVisual.Size.X,
    contentVisual.Size.Y - viewportVisual.Size.Y,
    0.0f);


  //
  // Configure the two interaction sources.  Enable input with inertia.  
  //

  var interactionSource1 = VisualInteractionSource.Create(horizontalVisual);
  var interactionSource2 = VisualInteractionSource.Create(verticalVisual);

  interactionSource1.PositionXSourceMode = 
  InteractionSourceMode.EnabledWithInertia; 

  interactionSource2.PositionYSourceMode = 
  InteractionSourceMode.EnabledWithInertia;


  _tracker.InteractionSources.Add(interactionSource1);
  _tracker.InteractionSources.Add(interactionSource2);


  //
  // Bind the InteractionTracker outputs to the contentVisual.
  //

  var positionExpression = _compositor.CreateExpressionAnimation("- tracker.Position");
  positionExpression.SetReferenceParameter("tracker", _tracker);

  contentVisual.StartAnimation("Offset", positionExpression);
}

Комментарии

Хотя несколько CompositionInteractionSources можно добавить в одну коллекцию CompositionInteractionSourceCollection, наиболее распространенным случаем является наличие только одного элемента в этой коллекции. Можно использовать несколько, если один и тот же InteractionTracker должен управлять несколькими областями проверки попадания. Если одновременно выполняется проверка попадания нескольких исходных визуальных элементов, иерархия визуального дерева определит, какой из них имеет приоритет. Если какой-либо общий родительский элемент содержит больше контактов для проверки попадания, чем один дочерний элемент, входные данные будут повышены до этого родительского элемента.

Свойства

Comment

Строка, связанная с CompositionObject.

(Унаследовано от CompositionObject)
Compositor

Compositor, используемый для создания объекта CompositionObject.

(Унаследовано от CompositionObject)
Count

Количество источников взаимодействия в коллекции.

Dispatcher

Диспетчер для CompositionObject.

(Унаследовано от CompositionObject)
DispatcherQueue

Возвращает dispatcherQueue для Объекта CompostionObject.

(Унаследовано от CompositionObject)
ImplicitAnimations

Коллекция неявных анимаций, присоединенных к этому объекту.

(Унаследовано от CompositionObject)
Properties

Коллекция свойств, связанных с CompositionObject.

(Унаследовано от CompositionObject)

Методы

Add(ICompositionInteractionSource)

Добавляет источник взаимодействия в коллекцию.

Close()

Закрывает CompositionObject и освобождает системные ресурсы.

(Унаследовано от CompositionObject)
ConnectAnimation(String, CompositionAnimation)

Подключается и анимация.

(Унаследовано от CompositionObject)
DisconnectAnimation(String)

Отключает анимацию.

(Унаследовано от CompositionObject)
Dispose()

Выполняет определяемые приложением задачи, связанные с удалением, высвобождением или сбросом неуправляемых ресурсов.

(Унаследовано от CompositionObject)
First()

Возвращает итератор, указывающий на первый объект в коллекции.

PopulatePropertyInfo(String, AnimationPropertyInfo)

Определяет свойство, которое можно анимировать.

(Унаследовано от CompositionObject)
Remove(ICompositionInteractionSource)

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

RemoveAll()

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

StartAnimation(String, CompositionAnimation, AnimationController)

Соединяет анимацию с указанным свойством объекта и запускает анимацию.

(Унаследовано от CompositionObject)
StartAnimation(String, CompositionAnimation)

Соединяет анимацию с указанным свойством объекта и запускает анимацию.

(Унаследовано от CompositionObject)
StartAnimationGroup(ICompositionAnimationBase)

Запускает группу анимации.

Метод StartAnimationGroup в CompositionObject позволяет запустить CompositionAnimationGroup. Все анимации в группе будут запущены одновременно с объектом .

(Унаследовано от CompositionObject)
StopAnimation(String)

Отключает анимацию от указанного свойства и останавливает анимацию.

(Унаследовано от CompositionObject)
StopAnimationGroup(ICompositionAnimationBase)

Останавливает группу анимации.

(Унаследовано от CompositionObject)
TryGetAnimationController(String)

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

(Унаследовано от CompositionObject)

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

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