TileBrush.Viewbox Egenskap

Definition

Hämtar eller anger innehållets position och dimensioner i en TileBrush panel.

public:
 property System::Windows::Rect Viewbox { System::Windows::Rect get(); void set(System::Windows::Rect value); };
public System.Windows.Rect Viewbox { get; set; }
member this.Viewbox : System.Windows.Rect with get, set
Public Property Viewbox As Rect

Egenskapsvärde

Innehållets TileBrush position och dimensioner. Standardvärdet är en rektangel (Rect) som har värdet TopLeft (0,0) och en Width och Height av 1.

Exempel

Du kan ange innehållets TileBrush storlek och position med hjälp Viewbox av egenskapen . Egenskapen ViewboxUnits avgör om Viewbox värdet är relativt till innehållets TileBrush gränser eller om det är ett absolut värde.

Den första bilden visar en bild på 100 till 100 bildpunkter och använder sedan den här bilden för att visa effekterna av olika Viewbox egenskapsinställningar.

En bild Påbörjar exempelbild (100 av 100 enhetsoberoende bildpunkter)

Följande bild visar utdata från en TileBrush som använder Viewbox 0,0,0,0,0, 0,25,0,5. Andra relevanta egenskapsvärden är följande:

Den här bilden visar flera olika Stretch egenskapsinställningar. Egenskapen Stretch bestämmer hur en TileBrush sträcker ut dess Viewbox för att fylla dess Viewport.

TileBrush med en viewbox på 0,0 0,25,0,5 TileBrush med en relativ vyruta på 0,0,0,0, 0,25,0,5

Nästa bild visar en liknande TileBrush men med en relativ på Viewbox 0,5,0,25, 0,25,0,5.

TileBrush med en Viewbox på 0.5,0.25 0.25,0.5 Liknande TileBrush men med en annan inställning för Viewbox

Nästa bild visar samma TileBrush men med ett relativt Viewport värde på 0,0,0,0, 0,5,0,5 och ett TileMode av Tile.

TiledTileBrush med en Viewbox på 0,5,0,25 0,25,0,5 Liknande TileBrush men med tiling och en annan Viewport-inställning

I följande exempel visas hur du skapar en sida vid sida TileBrush med Viewbox 0,5,0,25, 0,25,0,5.

<Rectangle
 Width="100" Height="100">
  <Rectangle.Fill>
    <ImageBrush 
      ImageSource="sampleImages\testImage.gif"
      Viewbox="0.5,0.25, 0.25,0.5" 
      ViewboxUnits="RelativeToBoundingBox" 
      Viewport="0,0,0.5,0.5"
      ViewportUnits="RelativeToBoundingBox" 
      TileMode="Tile" 
      Stretch="Fill" 
      AlignmentX="Center"
      AlignmentY="Center"/>
  </Rectangle.Fill>
</Rectangle>
// Create a rectangle.
Rectangle myRectangle = new Rectangle();
myRectangle.Width = 100;
myRectangle.Height = 100;

// Load the image.
BitmapImage theImage = 
    new BitmapImage(
        new Uri("sampleImages\\testImage.gif", UriKind.Relative));   
ImageBrush myImageBrush = new ImageBrush(theImage);

myImageBrush.Viewbox = new Rect(0.5, 0.25, 0.25, 0.5);
myImageBrush.ViewboxUnits = BrushMappingMode.RelativeToBoundingBox;
myImageBrush.Viewport = new Rect(0,0,0.25,0.25);
myImageBrush.ViewportUnits = BrushMappingMode.RelativeToBoundingBox;
myImageBrush.TileMode = TileMode.Tile;
myImageBrush.Stretch = Stretch.Fill;
myImageBrush.AlignmentX = AlignmentX.Center;
myImageBrush.AlignmentY = AlignmentY.Center;

// Use the ImageBrush to paint the rectangle's background.
myRectangle.Fill = myImageBrush;
' Create a rectangle.
Dim myRectangle As New Rectangle()
myRectangle.Width = 100
myRectangle.Height = 100

' Load the image.
Dim theImage As New BitmapImage(New Uri("sampleImages\testImage.gif", UriKind.Relative))
Dim myImageBrush As New ImageBrush(theImage)
With myImageBrush
    .Viewbox = New Rect(0.5, 0.25, 0.25, 0.5)
    .ViewboxUnits = BrushMappingMode.RelativeToBoundingBox
    .Viewport = New Rect(0, 0, 0.25, 0.25)
    .ViewportUnits = BrushMappingMode.RelativeToBoundingBox
    .TileMode = TileMode.Tile
    .Stretch = Stretch.Fill
    .AlignmentX = AlignmentX.Center
    .AlignmentY = AlignmentY.Center
End With

' Use the ImageBrush to paint the rectangle's background.
myRectangle.Fill = myImageBrush

Kommentarer

När du målar ett område med hjälp av använder TileBrushdu tre komponenter: innehåll, paneler och utdataområdet. Egenskapen Viewbox anger innehållets storlek och position TileBrush . Följande bild visar hur dessa tre TileBrush komponenter relaterar till varandra.

TileBrush-komponenter TileBrush-komponenter

Komponenter i en kaklad TileBrush-komponenter

Egenskapen ViewboxUnits avgör om Viewbox värdet tolkas som ett relativt eller absolut värde. Som standardvärde är egenskapen inställd på ViewboxUnitsRelativeToBoundingBox.

Urklipp i Viewbox

TileBrush innehållet klipps aldrig till Viewbox. Innehållet TileBrush dock till kanterna på Viewport, som anger värdena för baspanelen.

Följande bild visar effekten av olika Stretch inställningar på en TileBrush som har en Viewbox som är mindre än dess Viewport. De delar av bilden som finns utanför Viewbox är gråtonade.

TileBrush med olika Stretch-inställningar TileBrush med olika Stretch-inställningar

Information om beroendeegenskap

Objekt Value
Identifierarfält ViewboxProperty
Metadataegenskaper inställda på true Ingen

Gäller för

Se även