CompositionInteractionSourceCollection 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
互動來源的集合。
這是與指定 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)
- 繼承
- 屬性
- 實作
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 |
用來建立這個CompositionObject的Compositor。 (繼承來源 CompositionObject) |
Count |
集合中的互動來源數目。 |
Dispatcher |
CompositionObject的發送器。 (繼承來源 CompositionObject) |
DispatcherQueue |
取得 CompostionObject 的 DispatcherQueue 。 (繼承來源 CompositionObject) |
ImplicitAnimations |
附加至這個 物件的隱含動畫集合。 (繼承來源 CompositionObject) |
Properties |
與 CompositionObject相關聯的屬性集合。 (繼承來源 CompositionObject) |