TileBrush.Viewbox Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá nebo nastaví pozici a rozměry obsahu v TileBrush dlaždici.
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
Hodnota vlastnosti
Pozice a rozměry TileBrush obsahu. Výchozí hodnota je obdélník (Rect), který má hodnotu TopLeft (0,0) a Width a Height 1.
Příklady
Velikost a umístění TileBrush obsahu můžete zadat pomocí Viewbox vlastnosti. Vlastnost ViewboxUnits určuje, zda Viewbox je hodnota relativní k hranicím TileBrush obsahu, nebo zda se jedná o absolutní hodnotu.
První obrázek znázorňuje obrázek o rozměrech 100 ×100 pixelů a pak tento obrázek použije k zobrazení efektů různých Viewbox nastavení vlastností.
Počáteční ukázkový obrázek (100 až 100 pixelů nezávislých na zařízení)
Následující obrázek ukazuje výstup TileBrush , který používá Viewbox 0,0,0,0, 0,0, 0,25,0,5. Mezi další relevantní hodnoty vlastností patří:
ViewboxUnits: RelativeToBoundingBox (výchozí)
Viewport: 0,0,1,1
Tento obrázek ukazuje několik různých Stretch nastavení vlastností. Vlastnost Stretch určuje, jak TileBrush se roztáhne jeho Viewbox vyplnění Viewport.
TileBrush s relativním zobrazením 0,0,0,0, 0,25,0,5
Následující obrázek ukazuje podobný TileBrush , ale s relativní Viewbox hodnotou 0,5,0,25, 0,25,0,5.
Podobné TileBrush, ale s jiným nastavením Viewbox
Následující obrázek ukazuje totéž TileBrush , ale s relativní Viewport hodnotou 0,0,0,0, 0,0, 0,5,5 a TileMode z Tile.
Podobné TileBrush, ale s tilingem a jiným nastavením oblasti zobrazení
Následující příklad ukazuje, jak vytvořit dlaždici TileBrush s 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
Poznámky
Při malování oblasti pomocí TileBrush, použijete tři komponenty: obsah, dlaždice a výstupní oblast. Vlastnost Viewbox určuje velikost a umístění TileBrush obsahu. Následující obrázek ukazuje, jak spolu tyto tři TileBrush komponenty vzájemně souvisejí.
Komponenty TileBrush
Vlastnost ViewboxUnits určuje, zda Viewbox je hodnota interpretována jako relativní nebo absolutní hodnota. Ve výchozím nastavení ViewboxUnits je vlastnost nastavena na RelativeToBoundingBox.
Výřez zobrazení
TileBrush obsah není nikdy oříznut na Viewbox. TileBrush Obsah se ale ořízne na okraje Viewport, které nastaví hodnoty pro základní dlaždici.
Následující obrázek znázorňuje vliv různých Stretch nastavení na nastavení TileBrush , které má Viewbox menší než jeho Viewport. Části obrázku, které jsou mimo Viewbox obraz, jsou vybarvené šedě.
TileBrush s různými nastaveními stretch
Informace o vlastnosti závislosti
| Položka | Hodnota |
|---|---|
| Pole Identifikátor | ViewboxProperty |
Vlastnosti metadat nastavené na true |
None |