Rect 構造体

定義

四角形の位置とサイズを表す数値を格納します。

public value class Rect
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.FoundationContract, 65536)]
struct Rect
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.FoundationContract), 65536)]
public struct Rect
var rect = {
x : /* Your value */,
y : /* Your value */,
width : /* Your value */,
height : /* Your value */
}
Public Structure Rect
<object property="x,y,width,height"/>
-or-
<object property="x y width height"/>

継承
Rect
属性

Windows の要件

デバイス ファミリ
Windows 10 (10.0.10240.0 で導入)
API contract
Windows.Foundation.FoundationContract (v1.0 で導入)

注釈

UI 情報を表すプロパティに適用すると、Rect 値の幅と高さの値はデバイスに依存しないピクセルを表します。 xy の値には不確定な参照フレームがありますが (この値の適用方法によって異なります)、多くの場合、メイン アプリ ウィンドウの座標空間内のポイントを表します。

Javascript:JavaScript では、Rect は x、ywidthheight の 4 つのデータ メンバーを持つオブジェクトです。 データ メンバー (フィールド) 以外の Rect メンバー リストに一覧表示されている API は、JavaScript プログラミングには適用されません。

XAML 構文に関する注意事項

オブジェクト属性の使用は、Windows ランタイム XAML 解析規則によって技術的に許可されます。 ただし、一般的には使用されないため、その使用は表示されません。

値間の区切り記号として、コンマではなくスペースを使用できます。 区切り記号の使用も混在できます。

4 つの値をすべて指定する必要があります。 "0,0" は "x,y" の暗黙的な既定値ではなく、文字列内の 4 つ未満のコンポーネントを解析できる他の規則はありません。

Rect は共有可能な型ではないので、Rect 要素を XAML ResourceDictionary のリソースとして宣言することはできません (詳細については、「 ResourceDictionary と XAML リソース参照」を参照してください)。

値の修正とプロパティによる値の解釈方法

サイズ は、高さと幅の同じメタファーを使用する同様の構造です。 ただし、Rect は原点を指定しますが、 Size は指定しません。 通常、Rect はグラフィックス ライブラリ API に使用され、 Size はアプリ UI でのプレゼンテーションとレイアウトに使用されます。特にアダプティブ レイアウト (配置は多くの場合、自動) に使用されます。

プロパティに適用された場合の Rect 値の一般的な動作は、次の原則に従います。

  • 高さは 負の値にすることはできません。
  • XY は負の値になる可能性があり、追加の変換がない限り、Rect 定義は参照の座標フレームの外側になります。
  • XY には 0 を指定できます。 値 0 は 、Width または Height にも有効です。 (ただし、 Width または Height の値が 0 の Rect が RectangleGeometry に適用されている場合、結果の RectangleGeometry はレンダリングされません)。
  • XYWidthHeight には、許可される値の観点から整数以外の値を指定できます。 ただし、通常は整数値を使用します。 XAML UI は、ポイントの場所と単位メジャーでサブピクセル値が使用されない場合に最適に動作します。

言語プロジェクションと Rect のメンバー

Microsoft .NET 言語 (C# または Microsoft Visual Basic) または Visual C++ コンポーネント拡張機能 (C++/CX) を使用している場合、Rect には非データ メンバーが使用でき、そのデータ メンバーはフィールドではなく読み取り/書き込みプロパティとして公開されます。 「.NET API ブラウザーの Rect 」を参照してください。

C++/WinRT または Windows ランタイム C++ テンプレート ライブラリ (WRL) を使用してプログラミングする場合、データ メンバー フィールドのみが Rect のメンバーとして存在し、.NET プロジェクションのユーティリティ メソッドまたはプロパティを使用することはできません。 C++ コードは、 RectHelper 静的クラスから使用できる同様のユーティリティ メソッドにアクセスできます。

次の表は、.NET と C++ で使用できる同等のメソッドを示しています。

.NET (Rect) C++ (RectHelper)
Rect(Point, Point) FromPoints(Point, Point)
Rect(Point, Size) FromLocationAndSize(Point, Size)
Rect(Double, Double, Double, Double) FromCoordinatesAndDimensions(Single, Single, Single, Single)
GetBottom(Rect)
IsEmpty GetIsEmpty(Rect)
Left GetLeft(Rect)
Right GetRight(Rect)
上位 GetTop(Rect)
Contains(Point) Contains(Rect, Point)
[等しい] Equals(Rect, Rect)
Intersect(Rect) Intersect(Rect, Rect)
Union(Point) Union(Rect, Point)
Union(Rect) Union(Rect, Rect)

フィールド

Height

四角形の高さ (ピクセル単位)。

Width

四角形の幅 (ピクセル単位)。

X

四角形の左上隅の x 座標。

Y

四角形の左上隅の y 座標。

適用対象

こちらもご覧ください