情報
要求されたトピックは次のとおりです。しかし、このトピックはこのライブラリには含まれていません。

Windows Phone 8 のコントロールの傾斜効果

2014/06/18

対象: Windows Phone 8 および Windows Phone Silverlight 8.1 | Windows Phone OS 7.1

Windows Phone コントロールの傾斜効果を使用すると、コントロールを操作するための新しい視覚的なフィードバックを追加できます。標準の押された状態と押されていない状態の代わりに、傾斜効果を実装したコントロールでは操作中のモーションを表現します。その結果、コントロールがタッチされると、"傾斜" しているように反応します。 このトピックでは、傾斜効果のアーキテクチャと実装について説明します。

このトピックは、次のセクションで構成されています。

傾斜効果はカスタム依存関係プロパティ (IsTiltEnabled) であり、Button などのコントロールに追加できます。 この依存関係プロパティは、TiltEffect.cs というカスタム クラス ファイルで定義されています。また、このファイルには、コントロールに視覚的な傾斜効果を作成するのに必要なコードも含まれています。アイテムがタップされると、この TiltEffect クラスは該当するプロパティが有効になっている指定のコントロールを検索し、効果を適用します。依存関係プロパティをグローバルに適用してビジュアル ツリー内のすべてのコントロールに傾斜効果を継承させたり、必要な 1 つのコントロールにだけ依存関係プロパティを適用したりできます。

TiltEffect.cs ファイルにはもう 1 つ依存関係プロパティ (SuppressTilt) が定義されており、このプロパティではコントロールの傾斜効果を抑制できます。たとえば、傾斜効果をページ全体に適用する一方で、ページ上の特定のコントロールでは傾斜効果を使用しない場合に、このプロパティを使用します。

名前

説明

IsTiltEnabled

依存関係プロパティ

ブール値: この依存関係プロパティを使用すると、アプリケーションで傾斜効果を適用できます。グローバルに、または単一のコントロールに適用できます。

SuppressTilt

依存関係プロパティ

ブール値: この依存関係プロパティを使用すると、コントロールの傾斜効果を抑制できます。

ヒントヒント:

TiltEffect.cs ファイルは、コントロール傾斜効果のサンプルでダウンロードできるサンプルに組み込まれています。傾斜効果をコントロールに実装するには、このサンプルをダウンロードし、コードをプロジェクトにインポートする必要があります。「Windows Phone 8 のコントロールの傾斜効果を使用する方法」では、傾斜効果アプリケーションの作成方法を説明しています。

傾斜効果を実装する手順は次のとおりです。

  1. TiltEffect.cs ファイルからコードをプロジェクトにインポートします。

  2. IsTiltEnabled 依存関係プロパティをグローバルに適用するか、プロジェクト内の特定のコントロールに適用します。

  3. 必要に応じて、プロジェクト内の特定のコントロールに SuppressTilt 依存関係プロパティを適用します。

次に示す TiltEffect.cs ファイルのコード セグメントでは、傾斜可能なアイテム一覧が作成されます。

public static List<Type> TiltableItems { get; private set; }

        static TiltEffect()
        {
            TiltableItems = new List<Type>() { typeof(ButtonBase), typeof(ListBoxItem),};
        }


コントロールがタップされると、TiltEffect クラスは傾斜効果が有効になっている指定のコントロールを検索します。既定では、一般的な ButtonBase クラスおよび ListBoxItem コントロールが傾斜可能アイテムとして指定されています。ここでコントロールの種類が存在しない場合は、IsTiltEnabled 依存関係プロパティが割り当てられていて True に設定されていたとしても、傾斜効果はどのコントロールにも適用されません。他のコントロールのサポートを追加するために、このコード セグメントを直接変更しないでください。追加する場合は、次のようなセグメントを使用したりして、独自のコードから一覧を更新する必要があります。

TiltEffect.TiltableItems.Add(typeof(“MyCustomControl”))

ただし、傾斜の動作がアプリケーション内で一貫しなくなるため、組み込みコントロールを追加することは推奨されません。

表示: