Rect Yapı

Tanım

Dikdörtgenin genişliğini, yüksekliğini ve konumunu açıklar.

public value class Rect : IFormattable
[System.ComponentModel.TypeConverter(typeof(System.Windows.RectConverter))]
[System.Serializable]
public struct Rect : IFormattable
[System.ComponentModel.TypeConverter(typeof(System.Windows.RectConverter))]
public struct Rect : IFormattable
[<System.ComponentModel.TypeConverter(typeof(System.Windows.RectConverter))>]
[<System.Serializable>]
type Rect = struct
    interface IFormattable
[<System.ComponentModel.TypeConverter(typeof(System.Windows.RectConverter))>]
type Rect = struct
    interface IFormattable
Public Structure Rect
Implements IFormattable
Devralma
Öznitelikler
Uygulamalar

Örnekler

Aşağıdaki örnekte, XAML kullanarak dikdörtgenin Rect boyutlarını ve konumunu belirtmek için bir yapının nasıl kullanılacağı gösterilmektedir.

using System;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Media;
using System.Windows.Shapes;

namespace SDKSample
{
    public partial class RectExample : Page
    {
        public RectExample()
        {   
            Path myPath1 = new Path();
            myPath1.Stroke = Brushes.Black;
            myPath1.StrokeThickness = 1;
            SolidColorBrush mySolidColorBrush = new SolidColorBrush();
            mySolidColorBrush.Color = Color.FromArgb(255, 204, 204, 255);
            myPath1.Fill = mySolidColorBrush;

            // Create the rectangle.
            // This RectangleGeometry specifies a rectangle that is 100 pixels high and
            // 150 wide. The left side of the rectangle is 10 pixels from the left of the 
            // Canvas and the top side of the rectangle is 100 pixels from the top of the Canvas.  
            // Note: You could alternatively use the Rect Constructor to create this:
            // Rect my Rect1 = new Rect(10,100,150,100");
            Rect myRect1 = new Rect();
            myRect1.X = 10;
            myRect1.Y = 100;
            myRect1.Width = 150;
            myRect1.Height = 100;
            RectangleGeometry myRectangleGeometry1 = new RectangleGeometry();
            myRectangleGeometry1.Rect = myRect1;

            GeometryGroup myGeometryGroup1 = new GeometryGroup();
            myGeometryGroup1.Children.Add(myRectangleGeometry1);

            myPath1.Data = myGeometryGroup1;

            Path myPath2 = new Path();
            myPath2.Stroke = Brushes.Black;
            myPath2.StrokeThickness = 1;
            myPath2.Fill = mySolidColorBrush;

            // Create the rectangle.
            // This Rect uses the Size property to specify a height of 50 and width
            // of 200. The Location property uses a Point value to determine the location of the
            // top-left corner of the rectangle.
            Rect myRect2 = new Rect();
            myRect2.Size = new Size(50, 200);
            myRect2.Location = new Point(300, 100);
            RectangleGeometry myRectangleGeometry2 = new RectangleGeometry();
            myRectangleGeometry2.Rect = myRect2;

            GeometryGroup myGeometryGroup2 = new GeometryGroup();
            myGeometryGroup2.Children.Add(myRectangleGeometry2);

            myPath2.Data = myGeometryGroup2;

            // Add path shape to the UI.
            Canvas myCanvas = new Canvas();
            myCanvas.Children.Add(myPath1);
            myCanvas.Children.Add(myPath2);
            this.Content = myCanvas;       
        }
    }
}

Imports System.Windows
Imports System.Windows.Controls
Imports System.Windows.Media
Imports System.Windows.Shapes

Namespace SDKSample
    Partial Public Class RectExample
        Inherits Page
        Public Sub New()
            Dim myPath1 As New Path()
            myPath1.Stroke = Brushes.Black
            myPath1.StrokeThickness = 1
            Dim mySolidColorBrush As New SolidColorBrush()
            mySolidColorBrush.Color = Color.FromArgb(255, 204, 204, 255)
            myPath1.Fill = mySolidColorBrush

            ' Create the rectangle.
            ' This RectangleGeometry specifies a rectangle that is 100 pixels high and
            ' 150 wide. The left side of the rectangle is 10 pixels from the left of the 
            ' Canvas and the top side of the rectangle is 100 pixels from the top of the Canvas.  
            ' Note: You could alternatively use the Rect Constructor to create this:
            ' Dim myRect1 As New Rect(10,100,150,100")
            Dim myRect1 As New Rect()
            myRect1.X = 10
            myRect1.Y = 100
            myRect1.Width = 150
            myRect1.Height = 100
            Dim myRectangleGeometry1 As New RectangleGeometry()
            myRectangleGeometry1.Rect = myRect1

            Dim myGeometryGroup1 As New GeometryGroup()
            myGeometryGroup1.Children.Add(myRectangleGeometry1)

            myPath1.Data = myGeometryGroup1

            Dim myPath2 As New Path()
            myPath2.Stroke = Brushes.Black
            myPath2.StrokeThickness = 1
            myPath2.Fill = mySolidColorBrush

            ' Create the rectangle.
            ' This Rect uses the Size property to specify a height of 50 and width
            ' of 200. The Location property uses a Point value to determine the location of the
            ' top-left corner of the rectangle.
            Dim myRect2 As New Rect()
            myRect2.Size = New Size(50, 200)
            myRect2.Location = New Point(300, 100)
            Dim myRectangleGeometry2 As New RectangleGeometry()
            myRectangleGeometry2.Rect = myRect2

            Dim myGeometryGroup2 As New GeometryGroup()
            myGeometryGroup2.Children.Add(myRectangleGeometry2)

            myPath2.Data = myGeometryGroup2

            ' Add path shape to the UI.
            Dim myCanvas As New Canvas()
            myCanvas.Children.Add(myPath1)
            myCanvas.Children.Add(myPath2)
            Me.Content = myCanvas
        End Sub
    End Class

End Namespace
<Page  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
  <Canvas>
    
    <!-- This rectangle demonstrates using the X, Y, Width, and Height properties
         of a Rect object. -->
    <Path Stroke="Black" StrokeThickness="1" Fill="LemonChiffon">
      <Path.Data>

        <!-- This RectangleGeometry specifies a rectangle that is 100 pixels high and
             150 wide. The left side of the rectangle is 10 pixels from the left of the 
             Canvas and the top side of the rectangle is 100 pixels from the top of the Canvas.  
             Note: An abbreviated syntax for creating an equivalent rectangle is:
             <RectangleGeometry Rect="10,100,150,100" /> -->
        <RectangleGeometry>
          <RectangleGeometry.Rect>
            <Rect X="10" Y="100" Width="150" Height="100" />
          </RectangleGeometry.Rect>
        </RectangleGeometry>
      </Path.Data>
    </Path>

    <!-- This rectangle demonstrates using the Size and Location properties of a Rect object. -->
    <Path Stroke="Black" StrokeThickness="1" Fill="LemonChiffon">
      <Path.Data>

        <!-- This RectangleGeometry uses the Size property to specify a height of 50 and width
             of 200. The Location property uses a Point value to determine the location of the
             top-left corner of the rectangle. /> -->
        <RectangleGeometry>
          <RectangleGeometry.Rect>
            <Rect Size="50,200" Location="300,100" />
          </RectangleGeometry.Rect>
        </RectangleGeometry>
      </Path.Data>
    </Path>
  </Canvas>
</Page>

Aşağıdaki örnekte, dikdörtgen oluşturmak ve sayfaya eklemek için kodun nasıl kullanılacağı gösterilmektedir. Örnekte ayrıca, yeni dikdörtgenle ilgili boyut ve koordinat bilgilerinin nasıl bulunup eşgüdümlü hale getirilip bilgilerin dikdörtgenin TextBox altında nasıl işlenmeleri gösterilmektedir.

// Create a rectangle and add it to the page. Also,
// find size and coordinate information about this
// new rectangle and render information in a TextBox 
// below the rectangle.
private StackPanel createRectExample1()
{
    // Initialize new rectangle.
    Rect myRectangle = new Rect();

    // The Location property specifies the coordinates of the upper left-hand 
    // corner of the rectangle. Set the Location property to an X coordinate of 10 and a
    // Y coordinate of 5. 
    myRectangle.Location = new Point(10, 5);

    // Set the Size property of the rectangle with a width of 200
    // and a height of 50.
    myRectangle.Size = new Size(200, 50);

    RectangleGeometry myRectangleGeometry = new RectangleGeometry();
    myRectangleGeometry.Rect = myRectangle;

    // This path is defined by the rectangle.
    Path myPath = new Path();
    myPath.Fill = Brushes.LemonChiffon;
    myPath.Stroke = Brushes.Black;
    myPath.StrokeThickness = 1;
    myPath.Data = myRectangleGeometry;

    //////////// Create string of rectangle property information /////////////
    // This string will contain all the size and coordinate property
    // information about the rectangle.
    /////////////////////////////////////////////////////////////////////////
    string rectInfo = "Rectangle Property Information: ";

    // Bottom property gets the y-axis value of the bottom of the rectangle. 
    // For this rectangle the value is 55.
    rectInfo = rectInfo + "Bottom: " + myRectangle.Bottom;

    // BottomLeft property gets the coordinates of the bottom left corner of the rectangle. 
    // For this rectangle the value is 10,55.
    rectInfo = rectInfo + "| BottomLeft: " + myRectangle.BottomLeft;

    // BottomRight property gets the coordinates of the bottom right corner of the rectangle. 
    // For this rectangle the value is 210,55.
    rectInfo = rectInfo + "| BottomRight: " + myRectangle.BottomRight;

    // Height property gets or sets the height of the rectangle. 
    // For this rectangle the value is 50.
    rectInfo = rectInfo + "| Height: " + myRectangle.Height;

    // Width property gets or sets the width of the rectangle. 
    // For this rectangle the value is 200.
    rectInfo = rectInfo + "| Width: " + myRectangle.Width;

    // Left property gets the x-axis position of the left side of the rectangle which is 
    // equivalent to getting the rectangle's X property. 
    // For this rectangle the value is 10.
    rectInfo = rectInfo + "| Left: " + myRectangle.Left;

    // Location property gets or sets the position of the rectangle's top-left corner.
    // For this rectangle the value is 10,5.
    rectInfo = rectInfo + "| Location: " + myRectangle.Location;

    // Right property gets the x-axis value of the right side of the rectangle. 
    // For this rectangle the value is 210.
    rectInfo = rectInfo + "| Right: " + myRectangle.Right;

    // Size property gets or sets the width and height of the rectangle.  
    // For this rectangle the value is 200,50.
    rectInfo = rectInfo + "| Size: " + myRectangle.Size;

    // Top property gets the y-axis position of the top of the rectangle which is 
    // equivalent to getting the rectangle's Y property.
    // For this rectangle the value is 5.
    rectInfo = rectInfo + "| Top: " + myRectangle.Top;

    // TopLeft property gets the position of the top-left corner of the rectangle, which 
    // is equivalent to (X, Y).   
    // For this rectangle the value is 10,5.
    rectInfo = rectInfo + "| TopLeft: " + myRectangle.TopLeft;

    // TopRight property gets the position of the top-left corner of the rectangle, which 
    // is equivalent to (X + Width, Y).   
    // For this rectangle the value is 210,5.
    rectInfo = rectInfo + "| TopRight: " + myRectangle.TopRight;

    // X property gets or sets the location of the rectangle's left side.  
    // For this rectangle the value is 10.
    rectInfo = rectInfo + "| X: " + myRectangle.X;

    // Y property gets or sets the location of the rectangle's top side.  
    // For this rectangle the value is 5.
    rectInfo = rectInfo + "| Y: " + myRectangle.Y;

    //////// End of creating string containing rectangle property information ////////

    // This StackPanel will contain the rectangle and TextBlock.
    StackPanel parentPanel = new StackPanel();

    // Add the rectangle path to the StackPanel. This will display the rectangle.
    parentPanel.Children.Add(myPath);

    // Add a TextBlock to display the rectangle's size and coordinate information.
    TextBlock myTextBlock = new TextBlock();
    myTextBlock.Text = rectInfo;
    parentPanel.Children.Add(myTextBlock);

    // Return the parent container to be displayed to the screen.
    return parentPanel;
}

Açıklamalar

XAML Öznitelik Kullanımı

<object property="x,y,width,height"/>  

XAML Değerleri

x
System.Double

Dikdörtgenin sol tarafındaki x koordinatı konumu.

Y
System.Double

Dikdörtgenin üst tarafının y koordinatı konumu.

width
System.Double

Dikdörtgenin değerini Width temsil eden negatif olmayan bir değer.

height
System.Double

Dikdörtgenin değerini Height temsil eden negatif olmayan bir değer.

Oluşturucular

Rect(Double, Double, Double, Double)

Belirtilen x koordinatı Rect , y koordinatı, genişliği ve yüksekliği olan yapının yeni bir örneğini başlatır.

Rect(Point, Point)

Belirtilen iki noktayı içerecek kadar büyük olan yapının yeni bir örneğini Rect başlatır.

Rect(Point, Size)

Belirtilen sol üst köşe konumuna Rect ve belirtilen genişlik ve yüksekliğe sahip yapının yeni bir örneğini başlatır.

Rect(Point, Vector)

Belirtilen noktayı ve belirtilen nokta ile belirtilen vektörün Rect toplamını içerecek kadar büyük olan yapının yeni bir örneğini başlatır.

Rect(Size)

Belirtilen boyutta olan ve (0,0) konumunda bulunan yapının yeni bir örneğini Rect başlatır.

Özellikler

Bottom

Dikdörtgenin alt kısmındaki y ekseni değerini alır.

BottomLeft

Dikdörtgenin sol alt köşesinin konumunu alır.

BottomRight

Dikdörtgenin sağ alt köşesinin konumunu alır.

Empty

Konumu veya alanı olmayan bir dikdörtgeni temsil eden özel bir değer alır.

Height

Dikdörtgenin yüksekliğini alır veya ayarlar.

IsEmpty

Dikdörtgenin dikdörtgen Empty olup olmadığını gösteren bir değer alır.

Left

Dikdörtgenin sol tarafındaki x ekseni değerini alır.

Location

Dikdörtgenin sol üst köşesinin konumunu alır veya ayarlar.

Right

Dikdörtgenin sağ tarafındaki x ekseni değerini alır.

Size

Dikdörtgenin genişliğini ve yüksekliğini alır veya ayarlar.

Top

Dikdörtgenin üst kısmındaki y ekseni konumunu alır.

TopLeft

Dikdörtgenin sol üst köşesinin konumunu alır.

TopRight

Dikdörtgenin sağ üst köşesinin konumunu alır.

Width

Dikdörtgenin genişliğini alır veya ayarlar.

X

Dikdörtgenin sol tarafındaki x ekseni değerini alır veya ayarlar.

Y

Dikdörtgenin üst tarafının y ekseni değerini alır veya ayarlar.

Yöntemler

Contains(Double, Double)

Dikdörtgenin belirtilen x koordinatını ve y koordinatını içerip içermediğini gösterir.

Contains(Point)

Dikdörtgenin belirtilen noktayı içerip içermediğini gösterir.

Contains(Rect)

Dikdörtgenin belirtilen dikdörtgeni içerip içermediğini gösterir.

Equals(Object)

Belirtilen nesnenin geçerli dikdörtgene eşit olup olmadığını gösterir.

Equals(Rect)

Belirtilen dikdörtgenin geçerli dikdörtgene eşit olup olmadığını gösterir.

Equals(Rect, Rect)

Belirtilen dikdörtgenlerin eşit olup olmadığını gösterir.

GetHashCode()

Dikdörtgen için bir karma kod oluşturur.

Inflate(Double, Double)

Belirtilen genişlik ve yükseklik miktarlarını her yönde kullanarak dikdörtgeni genişletir veya küçültür.

Inflate(Rect, Double, Double)

Belirtilen dikdörtgeni her yönde belirtilen genişlik ve yükseklik miktarlarına göre genişletmenin veya küçültmenin sonucu olan bir dikdörtgen oluşturur.

Inflate(Rect, Size)

Belirtilen dikdörtgenin belirtilen tarafından tüm yönlere genişletilmesinden kaynaklanan dikdörtgeni Sizedöndürür.

Inflate(Size)

Belirtilen Sizeöğesini her yönde kullanarak dikdörtgeni genişletir.

Intersect(Rect)

Geçerli dikdörtgenle belirtilen dikdörtgenin kesişimini bulur ve sonucu geçerli dikdörtgen olarak depolar.

Intersect(Rect, Rect)

Belirtilen dikdörtgenlerin kesişimini döndürür.

IntersectsWith(Rect)

Belirtilen dikdörtgenin geçerli dikdörtgenle kesişip kesişmediğini gösterir.

Offset(Double, Double)

Dikdörtgeni belirtilen yatay ve dikey miktarlarla taşır.

Offset(Rect, Double, Double)

Belirtilen yatay ve dikey miktarları kullanarak belirtilen dikdörtgenden uzaklığı olan bir dikdörtgen döndürür.

Offset(Rect, Vector)

Belirtilen vektör kullanılarak belirtilen dikdörtgenden uzaklığı olan bir dikdörtgen döndürür.

Offset(Vector)

Dikdörtgeni belirtilen vektöre göre taşır.

Parse(String)

Belirtilen dize gösteriminden yeni bir dikdörtgen oluşturur.

Scale(Double, Double)

Geçerli dikdörtgenin boyutunu belirtilen x ve y değerleriyle çarpar.

ToString()

Dikdörtgenin dize gösterimini döndürür.

ToString(IFormatProvider)

Belirtilen biçim sağlayıcısını kullanarak dikdörtgenin dize gösterimini döndürür.

Transform(Matrix)

Belirtilen matrisi uygulayarak dikdörtgeni dönüştürür.

Transform(Rect, Matrix)

Belirtilen matrisin belirtilen dikdörtgene uygulanmasından kaynaklanan dikdörtgeni döndürür.

Union(Point)

Geçerli dikdörtgeni belirtilen noktayı içerecek kadar genişletir.

Union(Rect)

Geçerli dikdörtgeni belirtilen dikdörtgeni içerecek kadar genişletir.

Union(Rect, Point)

Belirtilen dikdörtgeni ve belirtilen noktayı içerecek kadar büyük bir dikdörtgen oluşturur.

Union(Rect, Rect)

Belirtilen iki dikdörtgeni içerecek kadar büyük bir dikdörtgen oluşturur.

İşleçler

Equality(Rect, Rect)

Tam eşitlik için iki dikdörtgeni karşılaştırır.

Inequality(Rect, Rect)

Eşitsizlik için iki dikdörtgeni karşılaştırır.

Belirtik Arabirim Kullanımları

IFormattable.ToString(String, IFormatProvider)

Belirtilen biçimi kullanarak geçerli örneğin değerini biçimlendirin.

Şunlara uygulanır