InteractionTracker.NaturalRestingScale Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Естественная шкала отдыха для InteractionTracker.
Свойство NaturalRestingScale — это вычисляемая позиция шкалы, на которую будет останавливаться InteractionTracker без учета границ или модификаторов инерции. Это свойство часто полезно для таких действий, как виртуализация при прокрутке, где важно знать расположение остановки InteractionTracker . Существует два main вариантов использования свойства NaturalRestingScale: получение его текущего значения в аргументах событий InertiaStateEntered или ссылка на это свойство в ExpressionAnimation при создании таких вещей, как модификаторы инерции.
public:
property float NaturalRestingScale { float get(); };
float NaturalRestingScale();
public float NaturalRestingScale { get; }
var single = interactionTracker.naturalRestingScale;
Public ReadOnly Property NaturalRestingScale As Single
Значение свойства
float
Естественная шкала отдыха для InteractionTracker.
Примеры
// Listen for the InertiaStateEntered event
public void InertiaStateEntered(InteractionTracker sender, InteractionTrackerInertiaStateEnteredArgs args)
{
// Grab the NaturalRestingScale out of the args when the event is fired.
float scaleRest = args.NaturalRestingScale;
}
void CreateBasicScaleSnapPoint(float maxScale, float minScale)
{
var snappoint = InteractionTrackerInertiaRestingValue.Create(_compositor);
// Reference the NaturalRestingScale of InteractionTracker in an ExpressionAnimation for conditional portion of an InertiaModifier.
snappoint.Condition = _compositor.CreateExpressionAnimation("this.target.NaturalRestingScale >= min && this.target.NaturalRestingScale < max ");
snappoint.Condition.SetScalarParameter("min", minScale);
snappoint.Condition.SetScalarParameter("max", maxScale);
// Snap to the highbound if condition met
snappoint.RestingValue = _compositor.CreateExpressionAnimation("max");
snappoint.RestingValue.SetScalarParameter("max", maxScale);
scaleInertiaModifier.Add(snappoint);
_tracker.ConfigureScaleInertiaModifiers(scaleInertiaModifier);
}
Комментарии
Два варианта использования, описанные в фрагменте кода, являются основными вариантами использования свойства NaturalRestingScale. Хотя может возникнуть соблазн ссылаться на это свойство в InteractionTracker , как и на любое другое отношение object.property, вы не всегда получите самое актуальное значение. В этой ситуации рекомендуется прослушивать событие InertiaStateEntered и получать последнее значение из аргументов.