Condividi tramite


LinearGradientBrush Classe

Definizione

Disegna un'area con una sfumatura lineare.

public ref class LinearGradientBrush sealed : GradientBrush
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.Activatable(Windows.UI.Xaml.Media.ILinearGradientBrushFactory, 65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class LinearGradientBrush final : GradientBrush
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
/// [Windows.Foundation.Metadata.Activatable(Windows.UI.Xaml.Media.ILinearGradientBrushFactory, 65536, "Windows.Foundation.UniversalApiContract")]
class LinearGradientBrush final : GradientBrush
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.Activatable(typeof(Windows.UI.Xaml.Media.ILinearGradientBrushFactory), 65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class LinearGradientBrush : GradientBrush
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
[Windows.Foundation.Metadata.Activatable(typeof(Windows.UI.Xaml.Media.ILinearGradientBrushFactory), 65536, "Windows.Foundation.UniversalApiContract")]
public sealed class LinearGradientBrush : GradientBrush
Public NotInheritable Class LinearGradientBrush
Inherits GradientBrush
<LinearGradientBrush ...>
  oneOrMoreGradientStops
</LinearGradientBrush
Ereditarietà
Object Platform::Object IInspectable DependencyObject Brush GradientBrush LinearGradientBrush
Attributi

Requisiti Windows

Famiglia di dispositivi
Windows 10 (è stato introdotto in 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (è stato introdotto in v1.0)

Esempio

In questo esempio viene creata una sfumatura lineare con quattro colori per disegnare un oggetto Rectangle.

<StackPanel>
  <!-- This rectangle is painted with a vertical linear gradient. -->
  <Rectangle Width="200" Height="100">
    <Rectangle.Fill>
      <LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
        <GradientStop Color="Yellow" Offset="0.0" />
        <GradientStop Color="Red" Offset="0.25" />
        <GradientStop Color="Blue" Offset="0.75" />
        <GradientStop Color="LimeGreen" Offset="1.0" />
      </LinearGradientBrush>
    </Rectangle.Fill>
  </Rectangle>
</StackPanel>
Asse delle sfumature per sfumatura verticale

Commenti

LinearGradientBrush è un tipo di pennello usato per molte possibili proprietà dell'interfaccia utente che usano un pennello per riempire un'area visiva di un oggetto o un'area visiva di un oggetto nell'interfaccia utente dell'app. Esempi di alcune delle proprietà più comunemente usate che usano un valore Pennello includono: Control.Background, Control.Foreground, Shape.Fill, Control.BorderBrush, Panel.Background, TextBlock.Foreground. LinearGradientBrush è un'alternativa al tipo SolidColorBrush più comunemente usato.

Le proprietà StartPoint e EndPoint di LinearGradientBrush descrivono due punti in uno spazio di coordinate relativo. In questo modo viene creato un orientamento per la sfumatura e in genere questo specifica una sfumatura orizzontale o una sfumatura verticale. È anche possibile usare una sfumatura diagonale. Un oggetto LinearGradientBrush ha in genere due o più valori GradientStop per la proprietà GradientStops (raccolta ordinata). Ogni GradientStop specifica un colore e un offset. Offset rappresenta una posizione compresa tra 0 ( StartPoint) e 1 ( EndPoint) lungo la sfumatura e la lunghezza effettiva del pixel del pennello e la relativa sfumatura vengono regolate in base all'interfaccia utente in cui si applica LinearGradientBrush come valore. Per altre informazioni sul modo in cui vengono definiti i valori offset e sul modo in cui Offset, StartPoint e EndPoint sono correlati, vedere Usare i pennelli. È comune usare

È possibile usare il valore Transparent per uno dei colori GradientStop . Anche se questo non applica visivamente alcuna modifica all'interfaccia utente (è trasparente), questo punto è rilevabile per scopi di hit-testing. Per altre informazioni sui test di hit test, vedere la sezione "Hit testing" delle interazioni tra mouse.

I valori GradientStop di un oggetto LinearGradientBrush possono essere animati come parte delle transizioni o delle animazioni decorative. Usare uno dei tipi di animazione dedicati che possono animare un valore Color . Ciò comporta in genere la presenza .(GradientStop.Color) di una parte di un percorso di proprietà più lungo per un valore Storyboard.TargetProperty . Per altre informazioni sulla destinazione delle proprietà e su come animare le proprietà che usano i valori pennello, vedere Animazioni storyboard.

Pennelli come risorse XAML

Ogni tipo di pennello che può essere dichiarato in XAML (SolidColorBrush, LinearGradientBrush, ImageBrush) è destinato a essere definito come risorsa, in modo che sia possibile riutilizzare tale pennello come risorsa in tutta l'app. La sintassi XAML illustrata per i tipi Di pennello è appropriata per definire il pennello come risorsa. Quando si dichiara un pennello come risorsa, è necessario anche un attributo x:Key che verrà usato in seguito per fare riferimento a tale risorsa da altre definizioni dell'interfaccia utente. Per altre informazioni sulle risorse XAML e su come usare l'attributo x:Key, vedere Riferimenti alle risorse ResourceDictionary e XAML.

Il vantaggio di dichiarare pennelli come risorse è che riduce il numero di oggetti di runtime necessari per costruire un'interfaccia utente: il pennello è ora condiviso come risorsa comune che fornisce valori per più parti del grafico a oggetti.

Se si esaminano le definizioni dei modelli di controllo esistenti per i controlli XAML Windows Runtime, si noterà che i modelli usano ampiamente le risorse del pennello (anche se in genere sono SolidColorBrush, non LinearGradientBrush). Molte di queste risorse sono risorse di sistema e usano l'estensione di markup {ThemeResource} per il riferimento alla risorsa anziché all'estensione di markup {StaticResource}. Per altre informazioni su come usare i pennelli delle risorse di sistema nel modello di controllo XAML, vedere Risorse del tema XAML.

Costruttori

LinearGradientBrush()

Inizializza una nuova istanza della classe LinearGradientBrush .

LinearGradientBrush(GradientStopCollection, Double)

Inizializza una nuova istanza della classe LinearGradientBrush con l'angolo e l'oggetto GradientStopCollection specificato.

Proprietà

ColorInterpolationMode

Ottiene o imposta un valore di enumerazione ColorInterpolationMode che specifica come vengono interpolati i colori della sfumatura.

(Ereditato da GradientBrush)
Dispatcher

Ottiene CoreDispatcher associato a questo oggetto. CoreDispatcher rappresenta una struttura che può accedere a DependencyObject nel thread dell'interfaccia utente anche se il codice viene avviato da un thread non interfaccia utente.

(Ereditato da DependencyObject)
EndPoint

Ottiene o imposta le coordinate bidimensionali finali della sfumatura lineare.

EndPointProperty

Identifica la proprietà di dipendenza EndPoint .

GradientStops

Ottiene o imposta i cursori sfumatura del pennello.

(Ereditato da GradientBrush)
MappingMode

Ottiene o imposta un valore di enumerazione BrushMappingMode che specifica se le coordinate di posizionamento del pennello sfumatura sono assolute o relative all'area di output.

(Ereditato da GradientBrush)
Opacity

Ottiene o imposta il grado di opacità di un pennello.

(Ereditato da Brush)
RelativeTransform

Ottiene o imposta la trasformazione applicata al pennello usando coordinate relative.

(Ereditato da Brush)
SpreadMethod

Recupera o imposta il tipo di metodo spread che specifica come tracciare una sfumatura che inizia o finisce entro i limiti dell'oggetto da disegnare.

(Ereditato da GradientBrush)
StartPoint

Ottiene o imposta le coordinate bidimensionali iniziali della sfumatura lineare.

StartPointProperty

Identifica la proprietà di dipendenza StartPoint .

Transform

Ottiene o imposta la trasformazione applicata al pennello.

(Ereditato da Brush)

Metodi

ClearValue(DependencyProperty)

Cancella il valore locale di una proprietà di dipendenza.

(Ereditato da DependencyObject)
GetAnimationBaseValue(DependencyProperty)

Restituisce qualsiasi valore di base stabilito per una proprietà di dipendenza, che si applica nei casi in cui un'animazione non è attiva.

(Ereditato da DependencyObject)
GetValue(DependencyProperty)

Restituisce il valore effettivo corrente di una proprietà di dipendenza da un oggetto DependencyObject.

(Ereditato da DependencyObject)
PopulatePropertyInfo(String, AnimationPropertyInfo)

Definisce una proprietà che può essere animata.

(Ereditato da Brush)
PopulatePropertyInfoOverride(String, AnimationPropertyInfo)

Quando sottoposto a override in una classe derivata, definisce una proprietà che può essere animata.

(Ereditato da Brush)
ReadLocalValue(DependencyProperty)

Restituisce il valore locale di una proprietà di dipendenza, se viene impostato un valore locale.

(Ereditato da DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Registra una funzione di notifica per l'ascolto delle modifiche a un'istanza di DependencyObject specifica.

(Ereditato da DependencyObject)
SetValue(DependencyProperty, Object)

Imposta il valore locale di una proprietà di dipendenza in un oggetto DependencyObject.

(Ereditato da DependencyObject)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Annulla una notifica di modifica registrata in precedenza chiamando RegisterPropertyChangedCallback.

(Ereditato da DependencyObject)

Si applica a

Vedi anche