Image.NineGrid Propriedade

Definição

Obtém ou define um valor para uma metáfora de nove grades que controla como a imagem pode ser redimensionada. A metáfora de nove grades permite que você estique bordas e cantos de uma imagem de forma diferente de seu centro. Consulte Comentários para obter mais informações e uma ilustração.

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

Valor da propriedade

Um valor thickness que define as medidas Left, Top, Right, Bottom para a metáfora de redimensionamento de nove grades.

Comentários

Ao usar a renderização de nove grades, você pode especificar como diferentes áreas da imagem são ampliadas. Esse recurso é útil para preservar os detalhes nos cantos da imagem quando uma imagem é dimensionada ou se alonga.

A renderização de nove grades divide uma imagem em uma grade de nove seções:

Uma grade de nove seções. A renderização de nove grades permite preservar as dimensões originais dos cantos (caixas 1, 3, 7 e 9). As partes superior e inferior (caixas 2 e 8) são estendidas apenas horizontalmente, e os lados (caixas 4 e 6) são estendidos somente verticalmente. O centro (caixa 5) é estendido em ambas as dimensões. Para usar a renderização de nove grades, crie um

A aplicação da renderização de nove grades é muito útil quando a imagem em si inclui algum tipo de borda ou decoração de borda inserida na origem da imagem. Por exemplo, imagine que você esteja usando uma fonte de imagem para um Botão que tenha a estrutura de tópicos como parte de uma imagem com transparência. Talvez você queira que a área central que contém um ícone se estenda. Mas se você esticar os cantos, poderá obter artefatos de alias de cantos arredondados. Ou os lados da borda podem ficar muito grossos e não parecerão tão bons quando dimensionados. Para evitar isso, você pode usar um NineGrid com valores uniformes que sempre mantêm o tamanho do pixel da borda do mesmo tamanho que na origem da imagem.

No código ou em XAML, os valores para a Espessura que você usa para definir a propriedade NineGrid são valores de pixel independentes do dispositivo.

Aqui está um exemplo de XAML para um elemento Image usando um valor NineGrid:

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

Um valor NineGrid só será relevante para renderização de imagem se a imagem não tiver valores específicos definidos para Width e/ou Height e onde a imagem estiver sendo ampliada (a imagem é renderizada em um espaço de contêiner maior e o valor de Stretch não é** Nenhum**).

Aplica-se a

Confira também