Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Med Color klassen i Microsoft.Maui.Graphics namnområdet kan du ange färger som RGB-värden (Red-Green-Blue), Hue-Saturation-Luminosity-värden (HSL), Hue-Saturation-Value -värden (HSV) eller med ett färgnamn. En Alpha-kanal är också tillgänglig för att indikera transparens.
Color objekt kan skapas med Color konstruktorer, som kan användas för att ange en grå nyans, ett RGB-värde eller ett RGB-värde med transparens. Konstruktoröverlagringar tar emot float-värden från 0 till 1, byte, och int-värden.
Du kan också använda följande statiska metoder för att skapa Color objekt:
-
Color.FromRgbfrånfloatRGB-värden som sträcker sig från 0 till 1. -
Color.FromRgbfråndoubleRGB-värden som sträcker sig från 0 till 1. -
Color.FromRgbfrånbyteRGB-värden som sträcker sig från 0 till 255. -
Color.FromIntfrånintRGB-värden som sträcker sig från 0 till 255. -
Color.FromRgbafrånfloatRGBA-värden som sträcker sig från 0 till 1. -
Color.FromRgbafråndoubleRGBA-värden som sträcker sig från 0 till 1. -
Color.FromRgbafrånbyteRGBA-värden som sträcker sig från 0 till 255. -
Color.FromRgbafrånintRGBA-värden som sträcker sig från 0 till 255. -
Color.FromRgbafrån ettstring-baserat hexadecimalt värde i formatet "#RRGGBBAA" eller "#RRGGBB" eller "#RGBA" eller "#RGB", där varje bokstav motsvarar en hexadecimal siffra för alfa-, röda, gröna och blå kanaler. -
Color.FromHslafrånfloatHSLA-värden. -
Color.FromHslafråndoubleHSLA-värden. -
Color.FromHsvfrånfloatHSV-värden som sträcker sig från 0 till 1. -
Color.FromHsvfrånintHSV-värden som sträcker sig från 0 till 255. -
Color.FromHsvafrånfloatHSVA-värden. -
Color.FromHsvafrånintHSV-värden. -
Color.FromIntfrån ettintvärde beräknat som (B + 256 * (G + 256 * (R + 256 * A)).) -
Color.FromUintfrån ettuintvärde beräknat som (B + 256 * (G + 256 * (R + 256 * A)).) -
Color.FromArgbfrån ettstring-baserat hexadecimalt värde i formatet "#AARRGGBB" eller "#RRGGBB" eller "#ARGB" eller "#RGB", där varje bokstav motsvarar en hexadecimal siffra för alfa-, röd-, grön- och blå kanalerna.
Anmärkning
Förutom de metoder som anges ovan Color har Parse klassen även metoder och TryParse metoder som skapar Color objekt från string argument.
När ett Color objekt har skapats är det oföränderligt. Egenskaperna för färgen kan hämtas från följande float fält, som sträcker sig från 0 till 1:
- Red, som representerar färgens röda kanal.
- Green, som representerar färgens gröna kanal.
- Blue, som representerar den blå kanalen i färgen.
- Alpha, som representerar färgens alfakanal.
Dessutom kan egenskaperna hos färgen hämtas från följande metoder:
-
GetHue, som returnerar en
floatsom representerar färgens nyanskanal. -
GetSaturation, som returnerar en
floatsom representerar färgmättnadskanalen. -
GetLuminosity, som returnerar en
floatsom representerar färgens ljusstyrkakanal.
Namngivna färger
Klassen Colors definierar 148 offentliga statiska skrivskyddade fält för vanliga färger, till exempel AntiqueWhite, MidnightBlueoch YellowGreen.
Ändra en färg
Följande instansmetoder ändrar en befintlig färg för att skapa en ny färg:
- AddLuminosity returnerar en Color genom att lägga till luminositetsvärdet i det angivna deltavärdet.
- GetComplementary returnerar kompletterande Color.
-
MultiplyAlpha returnerar en Color genom att multiplicera alfavärdet med det angivna
floatvärdet. -
WithAlpha returnerar ett Color, som ersätter alfavärdet med det angivna
floatvärdet. -
WithHue returnerar ett Color, som ersätter hue-värdet med det angivna
floatvärdet. -
WithLuminosity returnerar ett Color, som ersätter luminositetsvärdet med det angivna
floatvärdet. -
WithSaturation returnerar ett Color, som ersätter mättnadsvärdet med det angivna
floatvärdet.
Conversions
Följande instansmetoder konverterar en Color till en alternativ representation:
- AsPaint returnerar ett SolidPaint objekt vars Color egenskap är inställd på färgen.
-
ToHex returnerar en hexadecimal
stringrepresentation av en Color. -
ToArgbHex returnerar en ARGB-hexadecimal
stringrepresentation av en Color. -
ToRgbaHex returnerar en hexadecimal
stringRGBA-representation av en Color. -
ToInt returnerar en ARGB-representation
intav en Color. -
ToUint returnerar en ARGB-representation
uintav en Color. -
ToRgb konverterar ett Color till RGB-värden
bytesom returneras somoutargument. -
ToRgba konverterar ett Color till RGBA-värden
bytesom returneras somoutargument. -
ToHsl konverterar ett Color till HSL-värden
floatsom skickas somoutargument.
Exempel
I XAML refereras färger vanligtvis med sina namngivna värden, eller med hexadecimal:
<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" />
I C# refereras färger vanligtvis med hjälp av sina namngivna värden eller med sina statiska metoder:
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) };
I följande exempel används markeringstillägget OnPlatform för att selektivt ange färgen på en ActivityIndicator:
<ActivityIndicator Color="{OnPlatform AliceBlue, iOS=MidnightBlue}"
IsRunning="True" />
Motsvarande C#-kod är:
ActivityIndicator activityIndicator = new ActivityIndicator
{
Color = DeviceInfo.Platform == DevicePlatform.iOS ? Colors.MidnightBlue : Colors.AliceBlue,
IsRunning = true
};
Bläddra i exemplet