Layout.IndexBasedLayoutOrientation プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
ソース コレクション内のインデックスに基づいて項目がレイアウトされる方向 (存在する場合) を取得します。
public:
property IndexBasedLayoutOrientation IndexBasedLayoutOrientation { IndexBasedLayoutOrientation get(); };
IndexBasedLayoutOrientation IndexBasedLayoutOrientation();
public IndexBasedLayoutOrientation IndexBasedLayoutOrientation { get; }
var indexBasedLayoutOrientation = layout.indexBasedLayoutOrientation;
Public ReadOnly Property IndexBasedLayoutOrientation As IndexBasedLayoutOrientation
プロパティ値
ソース コレクション内のインデックスに基づいて項目がレイアウトされる方向 (存在する場合) を示す列挙体の値。 既定値は です None
(「解説」を参照)。
注釈
派生クラスごとに Layout
、このプロパティの独自の既定値を指定できます。
NonVirtualizingLayout と VirtualizingLayout の両方で、既定値として IndexBasedLayoutOrientation.None を指定します。
LinedFlowLayout は を指定します LeftToRight
。 カスタム レイアウトでは、保護された SetIndexBasedLayoutOrientation メソッドを呼び出して、このプロパティの値を設定します。
プロパティを IndexBasedLayoutOrientation
使用すると、インデックス位置の項目がインデックス N+1
位置の項目 N
の右側か下にあるかを判断できます (または、どちらも使用できません)。 これにより、 ItemsView などのコントロールで、方向キーを使用してキーボード ナビゲーションを正しく実装できます。
プロパティ自体 IndexBasedLayoutOrientation
には影響 Layout
しません。 代わりに、ItemsView コントロールのように、 を使用Layout
するコントロールに影響を及ぼす可能性があります。 では ItemsView
、 TryGetItemIndex メソッドの内部実装と、キーボード ベースのナビゲーションの組み込み処理で、このプロパティの値が使用されます。
たとえば、 LinedFlowLayout レイアウトでは を指定します LeftToRight
。 その結果、右方向キーと左方向キーは、インデックスに基づいて項目に移動します。 右方向キーは、次のインデックス (インデックス N
からインデックスへの移動) に移動します N+1
。 左方向キーは、前のインデックス (インデックス N
からインデックスへの移動) に移動します N-1
。 一方、上方向キーと下方向キーは、物理的な位置に基づいて項目に移動します。
が のTopToBottom
場合IndexBasedLayoutOrientation
、動作は逆になります。
が のNone
場合IndexBasedLayoutOrientation
、4 つの方向キーはすべて、インデックスではなく、物理的な場所に基づいて項目に移動します。
この表の図は、 の使用可能な値 IndexBasedLayoutOrientation
を視覚的に表しています。
IndexBasedLayoutOrientation |
図 |
---|---|
LeftToRight 項目は、インデックスを増やして水平方向にレイアウトされます。 |
|
TopToBottom 項目は、インデックスを増やして垂直方向にレイアウトされます。 |
|
None アイテムのレイアウトとインデックス番号の間に相関関係はありません。 |