Condividi tramite


RadialGradientBrush Classe

Definizione

RadialGradientBrush disegna un'area con una sfumatura radiale. Un punto centrale definisce l'origine della sfumatura e un'ellisse definisce i limiti esterni della sfumatura.

/// [Microsoft.UI.Xaml.CustomAttributes.MUXContractProperty(version=0)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Version(1)]
/// [Windows.UI.Xaml.Markup.ContentProperty(Name="GradientStops")]
class RadialGradientBrush : XamlCompositionBrushBase
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.UI.Xaml.Markup.ContentProperty(Name="GradientStops")]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.XamlContract, 65536)]
class RadialGradientBrush : XamlCompositionBrushBase
[Microsoft.UI.Xaml.CustomAttributes.MUXContractProperty(version=0)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Version(1)]
[Windows.UI.Xaml.Markup.ContentProperty(Name="GradientStops")]
public class RadialGradientBrush : XamlCompositionBrushBase
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.UI.Xaml.Markup.ContentProperty(Name="GradientStops")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.XamlContract), 65536)]
public class RadialGradientBrush : XamlCompositionBrushBase
Public Class RadialGradientBrush
Inherits XamlCompositionBrushBase
Ereditarietà
Object IInspectable DependencyObject Brush XamlCompositionBrushBase RadialGradientBrush
Attributi

Esempio

Suggerimento

Per altre info, linee guida per la progettazione ed esempi di codice, vedi Pennelli XAML.

L'app Raccolta WinUI 3 include esempi interattivi della maggior parte dei controlli, delle funzionalità e delle funzionalità winUI 3. Ottenere l'app da Microsoft Store o ottenere il codice sorgente in GitHub.

Nell'esempio seguente viene creata una sfumatura radiale con sei interruzioni sfumature e viene utilizzata per disegnare un oggetto Rectangle.

<Page
  xmlns:media="using:Microsoft.UI.Xaml.Media">

  <Rectangle Width="200" Height="200">
      <Rectangle.Fill>
          <media:RadialGradientBrush>
              <GradientStop Color="Blue" Offset="0.0" />
              <GradientStop Color="Yellow" Offset="0.2" />
              <GradientStop Color="LimeGreen" Offset="0.4" />
              <GradientStop Color="LightBlue" Offset="0.6" />
              <GradientStop Color="Blue" Offset="0.8" />
              <GradientStop Color="LightGray" Offset="1" />
          </media:RadialGradientBrush>
      </Rectangle.Fill>
  </Rectangle>

</Page>

Rettangolo riempito con una sfumatura radiale

In questo esempio viene creata una sfumatura radiale che usa la modalità di mapping assoluto con valori personalizzati per Center, RadiusXRadiusY e GradientOrigin:

<Page
  xmlns:media="using:Microsoft.UI.Xaml.Media">

  <Rectangle Width="200" Height="200">
      <Rectangle.Fill>
          <media:RadialGradientBrush
            MappingMode="Absolute"
            Center="50,50"
            RadiusX="100"
            RadiusY="100"
            GradientOrigin="100,50"
            >
              <GradientStop Color="Yellow" Offset="0.0" />
              <GradientStop Color="Blue" Offset="1" />
          </media:RadialGradientBrush>
      </Rectangle.Fill>
  </Rectangle>

</Page>

Asse delle sfumature per sfumatura verticale

Commenti

Layout sfumatura

La sfumatura viene disegnata all'interno di un'ellisse definita dalle proprietà Center, RadiusX e RadiusY . I colori della sfumatura iniziano al centro dell'ellisse e terminano in corrispondenza del raggio.

I colori della sfumatura radiale sono definiti da cursori sfumatura aggiunti alla proprietà della raccolta GradientStops. Ogni cursore sfumatura specifica un colore e un offset lungo la sfumatura.

Per impostazione predefinita, l'origine della sfumatura è al centro e può essere scostata usando la proprietà GradientOrigin.

MappingMode definisce se Center, RadiusX, RadiusY e GradientOrigin rappresentano coordinate relative o assolute.

Quando MappingMode è impostato su RelativeToBoundingBox, i valori X e Y delle tre proprietà vengono considerati come relativi ai limiti degli elementi, dove (0,0) rappresenta l'angolo superiore sinistro e (1,1) rappresenta il lato inferiore destro dei limiti degli elementi per le proprietà Center, RadiusX e RadiusY e (0,0) rappresenta il centro per la proprietà GradientOrigin .

Quando MappingMode è impostato su Absolute, i valori X e Y delle tre proprietà vengono considerati come coordinate assolute all'interno dei limiti dell'elemento.

Supporto della versione di Windows 10

Il rendering delle sfumature è supportato in Windows 10 versione 1903 (v10.0.18362.0) e versioni successive. Nelle versioni precedenti del sistema operativo il pennello eseguirà il FallbackColor rendering di un colore a tinta unita specificato dalla proprietà .

Pennelli come risorse XAML

Ognuno dei tipi Brush che possono essere dichiarati in XAML (SolidColorBrush, LinearGradientBrush, ImageBrush) è progettato per essere definito come risorsa, in modo da poter riutilizzare tale pennello come risorsa nell'intera app. La sintassi XAML illustrata per i tipi brush è appropriata per definire il pennello come risorsa. Quando dichiari 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 info sulle risorse XAML e su come usare l'attributo x:Key, vedi Riferimenti alle risorse ResourceDictionary e XAML.

Il vantaggio di dichiarare i 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 degli 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 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 alle risorse anziché l'estensione di markup {StaticResource}. Per altre info su come usare i pennelli delle risorse di sistema nel codice XAML del modello di controllo, vedi Risorse del tema XAML.

Costruttori

RadialGradientBrush()

Inizializza una nuova istanza della classe RadialGradientBrush .

Proprietà

Center

Ottiene o imposta il centro dell'ellisse che contiene la sfumatura.

CenterProperty

Identifica la proprietà di dipendenza Center.

CompositionBrush

Ottiene o imposta CompositionBrush utilizzato da questo pennello XAML.

(Ereditato da XamlCompositionBrushBase)
Dispatcher

Restituisce null sempre in un'app SDK per app di Windows. Usare invece DispatcherQueue .

(Ereditato da DependencyObject)
DispatcherQueue

Ottiene l'oggetto a cui è associato l'oggetto DispatcherQueue . DispatcherQueue Rappresenta una funzionalità che può accedere a nel thread dell'interfaccia DependencyObject utente anche se il codice viene avviato da un thread non dell'interfaccia utente.

(Ereditato da DependencyObject)
FallbackColor

Colore da usare per il rendering nel caso in cui non sia possibile eseguire il rendering di CompositionBrush .

(Ereditato da XamlCompositionBrushBase)
GradientOrigin

Ottiene o imposta l'origine della sfumatura (rispetto all'angolo superiore sinistro).

GradientOriginProperty

Identifica la proprietà di dipendenza GradientOrigin.

GradientStops

Ottiene o imposta i cursori sfumatura del pennello.

InterpolationSpace

Ottiene o imposta lo spazio colore utilizzato per interpolare i colori della sfumatura.

InterpolationSpaceProperty

Identifica la proprietà di dipendenza InterpolationSpace.

MappingMode

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

MappingModeProperty

Identifica la proprietà di dipendenza MappingMode.

Opacity

Ottiene o imposta il grado di opacità di un oggetto Brush.

(Ereditato da Brush)
RadiusX

Ottiene o imposta il raggio dell'asse X dell'ellisse che contiene la sfumatura.

RadiusXProperty

Identifica la proprietà di dipendenza RadiusX.

RadiusY

Ottiene o imposta il raggio dell'asse Y dell'ellisse che contiene la sfumatura.

RadiusYProperty

Identifica la proprietà di dipendenza RadiusY.

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.

SpreadMethodProperty

Identifica la proprietà di dipendenza SpreadMethod.

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 dependencyObject.

(Ereditato da DependencyObject)
OnConnected()

Richiamato quando un pennello viene usato per la prima volta sullo schermo per disegnare un elemento.

Quando implementato in una classe derivata, è possibile creare un'istanza compositionBrush e fornirla al framework impostando la proprietà CompositionBrush .

OnDisconnected verrà chiamato quando il pennello non viene più utilizzato per disegnare elementi.

(Ereditato da XamlCompositionBrushBase)
OnDisconnected()

Richiamato quando il pennello non viene più utilizzato per disegnare elementi.

Quando implementato in una classe derivata, è possibile eliminare in modo sicuro il pennello di compostione e altre risorse di composizione.

OnConnected verrà chiamato di nuovo se il pennello viene usato in un secondo momento per disegnare eventuali elementi dopo la disconnessione.

(Ereditato da XamlCompositionBrushBase)
PopulatePropertyInfo(String, AnimationPropertyInfo)

Definisce una proprietà che può essere animata.

(Ereditato da Brush)
PopulatePropertyInfoOverride(String, AnimationPropertyInfo)

In caso di 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 è impostato un valore locale.

(Ereditato da DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Registra una funzione di notifica per l'ascolto delle modifiche apportate a una dipendenza specifica in questa istanza di DependencyObject .

(Ereditato da DependencyObject)
SetValue(DependencyProperty, Object)

Imposta il valore locale di una proprietà di dipendenza su 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