Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
La Color classe, nello spazio dei Microsoft.Maui.Graphics nomi, consente di specificare i colori come valori Red-Green-Blue (RGB), valori Hue-Saturation-Luminosity (HSL), valori Hue-Saturation-Value (HSV) o con un nome di colore. È disponibile anche un canale Alfa per indicare la trasparenza.
Color gli oggetti possono essere creati con Color costruttori, che possono essere usati per specificare una sfumatura grigia, un valore RGB o un valore RGB con trasparenza. I sovraccarichi del costruttore accettano valori compresi tra 0 e 1, byte, e int.
È anche possibile usare i metodi statici seguenti per creare Color oggetti:
-
Color.FromRgbdafloatcomponenti RGB con valori compresi tra 0 e 1. -
Color.FromRgbdadoublevalori RGB compresi tra 0 e 1. -
Color.FromRgbdabytevalori RGB compresi tra 0 e 255. -
Color.FromIntdaintvalori RGB compresi tra 0 e 255. -
Color.FromRgbadaifloatvalori RGBA compresi tra 0 e 1. -
Color.FromRgbadaidoublevalori RGBA compresi tra 0 e 1. -
Color.FromRgbadabytevalori RGBA compresi tra 0 e 255. -
Color.FromRgbadaintvalori RGBA compresi tra 0 e 255. -
Color.FromRgbada unstringvalore esadecimale basato sul formato "#RRGGBBAA" o "#RRGGBB" o "#RGBA" o "#RGB", dove ogni lettera corrisponde a una cifra esadecimale per i canali alfa, rosso, verde e blu. -
Color.FromHsladaifloatvalori HSLA. -
Color.FromHsladadoublevalori HSLA. -
Color.FromHsvdafloatvalori HSV compresi tra 0 e 1. -
Color.FromHsvdaintvalori HSV compresi tra 0 e 255. -
Color.FromHsvadafloatvalori HSVA. -
Color.FromHsvadaintvalori HSV. -
Color.FromIntda unintvalore calcolato come (B + 256 * (G + 256 * (R + 256 * A))). -
Color.FromUintda unuintvalore calcolato come (B + 256 * (G + 256 * (R + 256 * A))). -
Color.FromArgbda unstringvalore esadecimale basato sul formato "#AARRGGBB" o "#RRGGBB" o "#ARGB" o "RGB", dove ogni lettera corrisponde a una cifra esadecimale per i canali alfa, rosso, verde e blu.
Annotazioni
Oltre ai metodi elencati in precedenza, la classe Color include anche i metodi Parse e TryParse che creano oggetti Color dagli argomenti string.
Una volta creato, un Color oggetto non è modificabile. Le caratteristiche del colore possono essere ottenute dai campi seguenti float , compresi tra 0 e 1:
- Red, che rappresenta il canale rosso del colore.
- Green, che rappresenta il canale verde del colore.
- Blue, che rappresenta il canale blu del colore.
- Alpha, che rappresenta il canale alfa del colore.
Inoltre, le caratteristiche del colore possono essere ottenute dai metodi seguenti:
-
GetHue, che restituisce un
floatche rappresenta il canale di tonalità del colore. -
GetSaturation, che restituisce un
floatche rappresenta il canale di saturazione del colore. -
GetLuminosity, che restituisce un
floatche rappresenta il canale di luminosità del colore.
Colori denominati
La Colors classe definisce 148 campi di sola lettura statici pubblici per i colori comuni, ad esempio AntiqueWhite, MidnightBluee YellowGreen.
Modificare un colore
I metodi di istanza seguenti modificano un colore esistente per creare un nuovo colore:
- AddLuminosity restituisce un oggetto Color aggiungendo il valore di luminosità al valore delta fornito.
- GetComplementary restituisce il complemento Color.
-
MultiplyAlpha restituisce un oggetto Color moltiplicando il valore alfa per il valore fornito
float. -
WithAlpha restituisce un oggetto Color, sostituendo il valore alfa con il valore fornito
float. -
WithHue restituisce un Color oggetto, sostituendo il valore tonalità con il valore fornito
float. -
WithLuminosity restituisce un oggetto Color, sostituendo il valore di luminosità con il valore
floatfornito. -
WithSaturation restituisce un Color, sostituendo il valore di saturazione con il valore
floatfornito.
Conversions
I metodi di istanza seguenti converteno un oggetto Color in una rappresentazione alternativa:
- AsPaint restituisce un SolidPaint oggetto la cui Color proprietà è impostata sul colore.
-
ToHex restituisce una rappresentazione esadecimale
stringdi un oggetto Color. -
ToArgbHex restituisce una rappresentazione esadecimale
stringARGB di un oggetto Color. -
ToRgbaHex restituisce una rappresentazione esadecimale
stringRGBA di un oggetto Color. -
ToInt restituisce una rappresentazione ARGB
intdi un oggetto Color. -
ToUint restituisce una rappresentazione ARGB
uintdi un oggetto Color. -
ToRgb converte un Color in valori RGB
byterestituiti comeout. -
ToRgba converte un elemento Color in valori RGBA
byterestituiti comeoutargomenti. -
ToHsl converte un Color in valori HSL
floatpassati come argomentiout.
Examples
In XAML viene in genere fatto riferimento ai colori usando i valori denominati o con esadecimale:
<Label Text="Sea color"
TextColor="Aqua" />
<Label Text="RGB"
TextColor="#00FF00" />
<Label Text="Alpha plus RGB"
TextColor="#CC00FF00" />
<Label Text="Tiny RGB"
TextColor="#0F0" />
<Label Text="Tiny Alpha plus RGB"
TextColor="#C0F0" />
In C# viene in genere fatto riferimento ai colori usando i valori denominati o con i relativi metodi statici:
Label red = new Label { Text = "Red", TextColor = Colors.Red };
Label orange = new Label { Text = "Orange", TextColor = Color.FromHex("FF6A00") };
Label yellow = new Label { Text = "Yellow", TextColor = Color.FromHsla(0.167, 1.0, 0.5, 1.0) };
Label green = new Label { Text = "Green", TextColor = Color.FromRgb (38, 127, 0) };
Label blue = new Label { Text = "Blue", TextColor = Color.FromRgba(0, 38, 255, 255) };
Label indigo = new Label { Text = "Indigo", TextColor = Color.FromRgb (0, 72, 255) };
Label violet = new Label { Text = "Violet", TextColor = Color.FromHsla(0.82, 1, 0.25, 1) };
Nell'esempio seguente viene usata l'estensione OnPlatform di markup per impostare in modo selettivo il colore di un oggetto ActivityIndicator:
<ActivityIndicator Color="{OnPlatform AliceBlue, iOS=MidnightBlue}"
IsRunning="True" />
Il codice C# equivalente è il seguente:
ActivityIndicator activityIndicator = new ActivityIndicator
{
Color = DeviceInfo.Platform == DevicePlatform.iOS ? Colors.MidnightBlue : Colors.AliceBlue,
IsRunning = true
};
Sfoglia l'esempio