Image.NineGrid 屬性

定義

取得或設定九方格隱喻的值,控制影像的大小調整方式。 九方格隱喻可讓您以不同於其中心的方式延展影像的邊緣和角落。 如需詳細資訊和圖例,請參閱。

public:
 property Thickness NineGrid { Thickness get(); void set(Thickness value); };
Thickness NineGrid();

void NineGrid(Thickness value);
public Thickness NineGrid { get; set; }
var thickness = image.nineGrid;
image.nineGrid = thickness;
Public Property NineGrid As Thickness
<Image NineGrid="left,top,right,bottom" />

屬性值

值,可設定九個方格重設大小隱喻的 度量。

備註

當您使用九方格轉譯時,您可以指定影像的不同區域如何延展。 此功能適用於在影像縮放或延展時保留影像角落的詳細數據。

九方格轉譯會將影像分割成九個區段的網格線:

九個區段的網格線。 九方格轉譯可讓您保留角落的原始維度, (方塊 1、3、7 和 9) 。 頂端和底端 (方塊 2 和 8 個) 只會水平縮放,而側邊 (方塊 4 和 6) 只會垂直延伸。 中央 (方塊 5) 會在兩個維度中延展。 若要使用九方格轉譯,您可以建立

當影像本身包含內嵌在影像來源中的某種框線或邊緣裝飾類型時,套用九方格轉譯非常有用。 例如,假設您使用的是 按鈕 的影像來源,其外框是具有透明度影像的一部分。 您可能會想要包含圖示的中央區域延展。 但是,如果您延展角落,您可能會從圓角取得別名成品。 或者,框線側邊可能會太粗,而且在縮放時看起來不會像這樣。 若要避免此情況,您可以使用 NineGrid 搭配統一值,一律保留與影像來源中相同大小的框線圖元大小。

不論是在程式代碼或 XAML 中,您用來設定 NineGrid 屬性的 Thickness 值都是與裝置無關的圖元值。

以下是使用 NineGrid 值的 Image 元素範例 XAML:

<Image Source="Images/9grid.bmp" NineGrid="30,20,30,20" />

NineGrid 值只有在影像沒有針對 Width 和/或 Height 設定特定值時,才會與影像轉譯相關,而且影像正在 (影像轉譯成較大的容器空間,而 Stretch 的值則不是** None**) 。

適用於

另請參閱