ImageBrush Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Pinta uma área com uma imagem. Normalmente, a origem da imagem é obtida de formatos de arquivo, como JPEG (Joint Photographic Experts Group).
public ref class ImageBrush sealed : TileBrush
/// [Windows.Foundation.Metadata.Activatable(65536, "Microsoft.UI.Xaml.WinUIContract")]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class ImageBrush final : TileBrush
[Windows.Foundation.Metadata.Activatable(65536, "Microsoft.UI.Xaml.WinUIContract")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class ImageBrush : TileBrush
Public NotInheritable Class ImageBrush
Inherits TileBrush
<ImageBrush .../>
- Herança
- Atributos
Exemplos
Este exemplo XAML mostra como definir a propriedade Foreground de um TextBlock para um ImageBrush, cuja imagem é usada como o preenchimento do texto renderizado por TextBlock.
<!-- TextBlock with an image brush applied to the text. -->
<TextBlock FontFamily="Verdana" FontSize="72"
FontStyle="Italic" FontWeight="Bold">
SHRUBBERY
<TextBlock.Foreground>
<ImageBrush ImageSource="forest.jpeg"/>
</TextBlock.Foreground>
</TextBlock>
Comentários
Um ImageBrush é um tipo de pincel que define seu conteúdo como uma imagem que pode ser opcionalmente ampliada e alinhada. Os usos de um ImageBrush incluem efeitos decorativos para texto ou planos de fundo de imagem para controles ou contêineres de layout.
É útil usar um ImageBrush em vez de um controle Image em dois cenários de main:
- Você deseja pintar uma área não retangular, como uma elipse ou borda com uma imagem
- Você deseja usar um único ImageBrush para pintar várias áreas ou UIElements com a mesma imagem, o que é mais eficiente do que usar vários controles image
Se você definir um ImageBrush usando código, use o construtor padrão e defina ImageBrush.ImageSource. Isso requer um BitmapImage (não um URI (Uniform Resource Identifier) no código. Se a sua origem for um fluxo, use o método SetSourceAsync para iniciar o valor. Se sua origem for um URI (Uniform Resource Identifier), que inclui conteúdo em seu aplicativo que usa os esquemas ms-appx ou ms-resource , use o construtor BitmapImage que usa um URI (Uniform Resource Identifier). Você também pode considerar a manipulação do evento ImageOpened se houver algum problema de temporização com a recuperação ou decodificação da origem da imagem, em que você pode precisar de conteúdo alternativo para exibir até que a origem da imagem esteja disponível. Consulte Exemplo de imagens XAML , por exemplo, código.
Observação
Você pode usar o tratamento automático para acessar recursos não qualificados com qualificadores de escala e cultura atuais ou usar ResourceManager e ResourceMap com qualificadores para cultura e escala para obter os recursos diretamente. Para saber mais, veja Sistema de gerenciamento de recursos.
A propriedade Stretch é importante para como a imagem é aplicada quando usada como um pincel. Algumas imagens ficam boas quando estendidas conforme aplicado a uma determinada propriedade Brush com o comportamento Fill , enquanto outras imagens não se alongam ou dimensionam bem e podem exigir um valor de Nenhum ou Uniforme para Stretch. Experimente valores diferentes para Stretch para ver qual comportamento é melhor quando aplicado à interface do usuário.
Origens de imagens e dimensionamento
Você deve criar suas fontes de imagem em vários tamanhos recomendados, para garantir que seu aplicativo fique ótimo quando Windows 8 dimensioná-lo. Ao especificar um ImageSource para um ImageBrush, você pode usar uma convenção de nomenclatura que referenciará automaticamente o recurso correto para o dimensionamento atual. Para saber mais sobre a convenção de nomenclatura, confira Início rápido: usando recursos de arquivo ou imagem.
Para obter mais informações sobre como projetar para dimensionamento, consulte Diretrizes de UX para layout e dimensionamento.
Construtores
ImageBrush() |
Inicializa uma nova instância da classe ImageBrush . |
Propriedades
AlignmentX |
Obtém ou define o alinhamento horizontal do conteúdo no bloco base TileBrush . (Herdado de TileBrush) |
AlignmentY |
Obtém ou define o alinhamento vertical do conteúdo no bloco base do TileBrush . (Herdado de TileBrush) |
Dispatcher |
Sempre retorna |
DispatcherQueue |
Obtém o ao |
ImageSource |
Obtém ou define a origem da imagem exibida por este ImageBrush. No código, você define isso com uma instância de subclasse ImageSource , em XAML, você define isso com um URI como um arquivo de origem da imagem. |
ImageSourceProperty |
Identifica a propriedade de dependência ImageSource . |
Opacity |
Obtém ou define o grau de opacidade de um pincel. (Herdado de Brush) |
RelativeTransform |
Obtém ou define a transformação que é aplicada ao pincel, usando coordenadas relativas. (Herdado de Brush) |
Stretch |
Obtém ou define um valor que especifica como o conteúdo desse TileBrush se estende para caber em seus blocos. (Herdado de TileBrush) |
Transform |
Obtém ou define a transformação que é aplicada ao pincel. (Herdado de Brush) |
Métodos
ClearValue(DependencyProperty) |
Limpa o valor local de uma propriedade de dependência. (Herdado de DependencyObject) |
GetAnimationBaseValue(DependencyProperty) |
Retorna qualquer valor base estabelecido para uma propriedade de dependência, que se aplicaria nos casos em que uma animação não está ativa. (Herdado de DependencyObject) |
GetValue(DependencyProperty) |
Retorna o valor efetivo atual de uma propriedade de dependência de um DependencyObject. (Herdado de DependencyObject) |
PopulatePropertyInfo(String, AnimationPropertyInfo) |
Define uma propriedade que pode ser animada. (Herdado de Brush) |
PopulatePropertyInfoOverride(String, AnimationPropertyInfo) |
Quando substituído em uma classe derivada, define uma propriedade que pode ser animada. (Herdado de Brush) |
ReadLocalValue(DependencyProperty) |
Retorna o valor local de uma propriedade de dependência, se um valor local for definido. (Herdado de DependencyObject) |
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback) |
Registra uma função de notificação para escutar alterações em uma DependencyProperty específica nesta instância dependencyObject . (Herdado de DependencyObject) |
SetValue(DependencyProperty, Object) |
Define o valor local de uma propriedade de dependência em um DependencyObject. (Herdado de DependencyObject) |
UnregisterPropertyChangedCallback(DependencyProperty, Int64) |
Cancela uma notificação de alteração que foi registrada anteriormente chamando RegisterPropertyChangedCallback. (Herdado de DependencyObject) |
Eventos
ImageFailed |
Ocorre quando há um erro associado à recuperação ou ao formato da imagem. |
ImageOpened |
Ocorre quando a origem da imagem é baixada e decodificada sem falha. Você pode usar esse evento para determinar o tamanho de uma imagem antes de renderizá-la. |