Share via


IInteractionTrackerOwner 介面

定義

包含 InteractionTracker 事件將觸發的回呼。

實作此介面可接收 InteractionTracker狀態和值的回呼,以及是否接受 對 InteractionTracker 屬性的要求更新。

public interface class IInteractionTrackerOwner
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 196608)]
/// [Windows.Foundation.Metadata.Guid(3677260531, 19947, 20051, 178, 156, 176, 108, 159, 150, 214, 81)]
struct IInteractionTrackerOwner
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 196608)]
[Windows.Foundation.Metadata.Guid(3677260531, 19947, 20051, 178, 156, 176, 108, 159, 150, 214, 81)]
public interface IInteractionTrackerOwner
Public Interface IInteractionTrackerOwner
屬性

Windows 需求

裝置系列
Windows 10 Anniversary Edition (已於 10.0.14393.0 引進)
API contract
Windows.Foundation.UniversalApiContract (已於 v3.0 引進)

範例

class InteractionBehavior : Behavior<UIElement>, IInteractionTrackerOwner
{
  public void CustomAnimationStateEntered(InteractionTracker sender, InteractionTrackerCustomAnimationStateEnteredArgs args)
  {
    //Logic to run when InteractionTracker enters CustomAnimation 
  }

  public void IdleStateEntered(InteractionTracker sender, InteractionTrackerIdleStateEnteredArgs args)
  {
    //Logic to run when InteractionTracker enters Idle
  }

  public void InertiaStateEntered(InteractionTracker sender, InteractionTrackerInertiaStateEnteredArgs args)
  {
    //Logic to run when InteractionTracker enters Inertia
  }

  public void InteractingStateEntered(InteractionTracker sender, InteractionTrackerInteractingStateEnteredArgs args)
  {
    //Logic to run when InteractionTracker enters Interacting
  }

  public void RequestIgnored(InteractionTracker sender, InteractionTrackerRequestIgnoredArgs args)
  {
    //Logic to run when a request to update position or scale is ignored
  }

  public void ValuesChanged(InteractionTracker sender, InteractionTrackerValuesChangedArgs args)
  {

    //Logic to run when position or scale change
  }
}

備註

如果應用程式需要更新 InteractionTracker的狀態或值,則需要實作 IInteractionTrackerOwner。 由於此模型的非同步本質,這些回呼是更新應用程式邏輯的最佳方式。 若要深入瞭解 InteractionTracker 狀態和轉換,請參閱 InteractionTracker

InteractionTracker可以使用或不使用擁有者來建立。 若要註冊回呼,需要與擁有者建立 InteractionTracker 。 如果這些回呼對應用程式狀態而言並不重要,則建立沒有擁有者的 InteractionTracker 是適當的。

建立與擁有者的 InteractionTracker 也需要適當地處置 InteractionTracker

方法

CustomAnimationStateEntered(InteractionTracker, InteractionTrackerCustomAnimationStateEnteredArgs)

InteractionTracker進入自訂動畫狀態時所觸發的回呼。

IdleStateEntered(InteractionTracker, InteractionTrackerIdleStateEnteredArgs)

InteractionTracker進入閒置狀態時所觸發的回呼。

InertiaStateEntered(InteractionTracker, InteractionTrackerInertiaStateEnteredArgs)

InteractionTracker進入慣性狀態時所觸發的回呼。

InteractingStateEntered(InteractionTracker, InteractionTrackerInteractingStateEnteredArgs)

InteractionTracker進入互動狀態時所觸發的回呼。

RequestIgnored(InteractionTracker, InteractionTrackerRequestIgnoredArgs)

InteractionTracker忽略要求時所觸發的回呼。

ValuesChanged(InteractionTracker, InteractionTrackerValuesChangedArgs)

InteractionTracker的輸出值變更時所觸發的回呼。

適用於