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. A origem da imagem normalmente é 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 para 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 de imagem em dois cenários principais:
- 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 de imagem
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 sua origem for um fluxo, use o método SetSourceAsync para inicializar 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 poderá considerar o tratamento do evento ImageOpened se houver problemas de tempo com a recuperação ou decodificação da origem da imagem, em que talvez seja necessário exibir conteúdo alternativo até que a origem da imagem esteja disponível. Veja o exemplo de imagens XAML , por exemplo, código.
Note
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 de cultura e escala para obter os recursos diretamente. Para obter mais informações, consulte o sistema de gerenciamento de recursos .
A propriedade Stretch é importante para como a imagem é aplicada quando usada como um pincel. Algumas imagens parecem boas quando estendidas conforme aplicada a uma determinada propriedade Brush com o comportamento fill , enquanto outras imagens não alongam ou dimensionam bem e podem exigir um valor de None ou Uniform para Stretch. Experimente valores diferentes para Stretch para ver qual comportamento parece melhor quando aplicado à interface do usuário.
Fontes de imagem 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 obter detalhes da convenção de nomenclatura e mais informações, consulte Início Rápido: Usando recursos de arquivo ou imagem.
Para obter mais informações sobre como projetar para dimensionamento, consulte as diretrizes de UX para layout e dimensionamento.
Construtores
| Nome | Description |
|---|---|
| ImageBrush() |
Inicializa uma nova instância da classe ImageBrush . |
Propriedades
| Nome | Description |
|---|---|
| AlignmentX |
Obtém ou define o alinhamento horizontal do conteúdo no bloco base do 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 |
| 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 de 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 ajustar seus blocos. (Herdado de TileBrush) |
| Transform |
Obtém ou define a transformação que é aplicada ao pincel. (Herdado de Brush) |
Métodos
| Nome | Description |
|---|---|
| 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 em 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 um DependencyProperty específico 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
| Nome | Description |
|---|---|
| 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. |