Rect Struct

Definizione

Contiene valori numerici che rappresentano la posizione e le dimensioni di un rettangolo.

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"/>

Ereditarietà
Rect
Attributi

Requisiti Windows

Famiglia di dispositivi
Windows 10 (è stato introdotto in 10.0.10240.0)
API contract
Windows.Foundation.FoundationContract (è stato introdotto in v1.0)

Commenti

Se applicato alle proprietà che rappresentano le informazioni dell'interfaccia utente, i valori di larghezza e altezza di un valore Rect rappresentano pixel indipendenti dal dispositivo. I valori x e y hanno un frame di riferimento indeterminato (dipende dalla modalità di applicazione di questo valore), ma spesso rappresentano un punto nello spazio delle coordinate della finestra principale dell'app.

Javascript: In JavaScript, rect è un oggetto con quattro membri dati: x, y, width, height. Oltre ai membri dati (campi), l'API elencata negli elenchi Membri Rect non si applica alla programmazione JavaScript.

Note sulla sintassi XAML

L'utilizzo degli attributi degli oggetti è tecnicamente consentito dalle regole di analisi XAML Windows Runtime. Tuttavia, tale utilizzo non viene visualizzato perché non viene usato comunemente.

È possibile usare uno spazio anziché una virgola come delimitatore tra i valori. Sono consentiti anche utilizzi delimitatori misti.

È necessario specificare tutti e quattro i valori. "0,0" non è un valore predefinito implicito per "x,y" e non esistono altre convenzioni che possono analizzare meno di 4 componenti nella stringa.

Un elemento Rect non può essere dichiarato come risorsa in un ResourceDictionary XAML perché Rect non è un tipo condivisibile (per altre info vedi Riferimenti alle risorse ResourceDictionary e XAML).

Rettificare i valori e come vengono interpretati dalle proprietà

Size è una struttura simile che usa la stessa metafora di altezza e larghezza. Tuttavia, un rect specifica un punto di origine, mentre un valore Size non lo fa. In genere, Rect viene usato per l'API della libreria grafica e le dimensioni vengono usate per la presentazione e il layout nell'interfaccia utente dell'app, in particolare per il layout adattivo (in cui il posizionamento è spesso automatico).

Il comportamento tipico di un valore Rect quando applicato alle proprietà segue questi principi:

  • La larghezza e l'altezza non possono essere negativi.
  • X e Y possono essere negativi, con il risultato che la definizione Rect è esterna al frame di coordinate del riferimento, a meno che non sia presente una traduzione aggiuntiva.
  • X e Y possono essere 0. Il valore 0 è valido anche per Width o Height. Tuttavia, se un oggetto Rect con valore 0 per Width o Height viene applicato a un Oggetto RectangleGeometry, il rendering di RectangleGeometry risultante non viene eseguito.
  • X, Y, Width e Height possono essere valori non interi in termini di valori consentiti. Tuttavia, in genere si usano valori integer. L'interfaccia utente XAML si comporta al meglio quando le posizioni dei punti e le misure di unità non usano valori sub-pixel.

Proiezione del linguaggio e membri di Rect

Se si usa un linguaggio Microsoft .NET (C# o Microsoft Visual Basic) o estensioni del componente Visual C++ (C++/CX), Rect include membri non dati disponibili e i relativi membri dati vengono esposti come proprietà di lettura/scrittura, non campi. Vedere Rect nel browser api .NET.

Se si esegue la programmazione con C++/WinRT o la libreria modelli C++ (WRL) di Windows Runtime, esistono solo i campi membro dati come membri di Rect e non è possibile usare i metodi di utilità o le proprietà della proiezione .NET. Il codice C++ può accedere a metodi di utilità simili disponibili dalla classe statica RectHelper .

Questa tabella mostra i metodi equivalenti disponibili in .NET e 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)
Ultimo GetBottom(Rect)
Vuoto Vuoto
IsEmpty GetIsEmpty(Rect)
Sinistra GetLeft(Rect)
Va bene GetRight(Rect)
Top GetTop(Rect)
Contains(Point) Contains(Rect, Point)
È uguale a Equals(Rect, Rect)
Intersect(Rect) Intersect(Rect, Rect)
Union(Point) Union(Rect, Point)
Union(Rect) Union(Rect, Rect)

Campi

Height

Altezza del rettangolo, in pixel.

Width

Larghezza del rettangolo, in pixel.

X

Coordinata x dell'angolo superiore sinistro del rettangolo.

Y

Coordinata y dell'angolo superiore sinistro del rettangolo.

Si applica a

Vedi anche