Theming
Themagebruik is een mechanisme waarmee een consistente look en feel kan worden toegepast op alle onderdelen op een pagina. Voor nu betekent dit het delen van een kleurenschema over de gehele pagina.
Notitie
Een Theme JSON-object is een codeblok dat een reeks kleuren bevat. Creator Kit-onderdelen zijn ontworpen om het Theme-codeblok te accepteren dat speciaal is geconfigureerd door de app Fluent Theme-ontwerper en de kleurwaarden toe te wijzen aan onderdeeleigenschappen. Sla het object op als een variabele in uw app (zoals beschreven in de onderstaande instructies). Hoewel een Theme JSON-object wordt ontworpen om gemakkelijk te kunnen worden verwezen door kitonderdelen, kunnen onderdelen buiten de kit ook verwijzen naar deze waarden, wat helpt om gemakkelijk de consistentie tussen alle app-onderdelen te handhaven.
Het thema genereren
Gebruik de app Fluent Theme-ontwerper (opgegeven in de oplossing CreatorKitReferences(Canvas)) om een thema-Json-object te genereren waarnaar kan worden verwezen door Creator Kit-onderdelen.
Speel de app Fluent Theme-ontwerper af.
Wijzig de waarden voor Primaire kleur, Tekstkleur en Achtergrondkleur.
Selecteer in de rechterbovenhoek Thema exporteren om de Power Fx-expressieversie van Theme JSON te genereren en kopieer vervolgens de waarde uit het paneel.
Sla het thema op als een globale variabele in een app (volgende sectie).
Het thema instellen
De onderstaande Power Fx-formule toont een voorbeeld van hoe u een globale variabele instelt met behulp van de uitvoer van de app Fluent UI Theme-ontwerper. Naar deze variabele kan worden verwezen door alle onderdelen in de app.
- Plaats deze Power Fx-formule om voor de eigenschap
OnStart
van de app te worden uitgevoerd. - Vervang de waarde tussen de
/* THEME OBJECT */
-opmerkingen met uw eigen thema-object van de ontwerper.
Set(
AppTheme,
/* START THEME OBJECT */
{
palette: {
themePrimary: "#0078d4",
themeLighterAlt: "#eff6fc",
themeLighter: "#deecf9",
themeLight: "#c7e0f4",
themeTertiary: "#71afe5",
themeSecondary: "#2b88d8",
themeDarkAlt: "#106ebe",
themeDark: "#005a9e",
themeDarker: "#004578",
neutralLighterAlt: "#faf9f8",
neutralLighter: "#f3f2f1",
neutralLight: "#edebe9",
neutralQuaternaryAlt: "#e1dfdd",
neutralQuaternary: "#d0d0d0",
neutralTertiaryAlt: "#c8c6c4",
neutralTertiary: "#a19f9d",
neutralSecondary: "#605e5c",
neutralPrimaryAlt: "#3b3a39",
neutralPrimary:"#323130",
neutralDark: "#201f1e",
black: "#000000",
white: "#ffffff"
}
}
/* END THEME OBJECT */
);
Set(
AppThemeJson,
JSON(
AppTheme,
JSONFormat.IndentFour
)
);
Verwijzen naar thema uit Creator Kit-onderdelen
Een thema kan worden doorgegeven aan de eigenschap Theme
van elk onderdeel.
- Canvas componenten moeten naar de
AppTheme
variabele verwijzen. - Codecomponenten moeten naar de variabele verwijzen.
AppThemeJson
Verwijzen naar thema vanuit native Power Apps-onderdelen
Elk van de kernonderdelen in canvas-apps of aangepaste pagina's kan verwijzen naar elementen van het AppTheme
-object (kan niet met JSON-indeling zijn). Deze besturingselementen moeten verwijzen naar de gewenste palette
-eigenschappen en worden gecast als een kleurgegevenstype met behulp van de formule ColorValue()
.
Voorbeeld Button
.Fill
Power Fx formule die verwijst naar de primaire kleur van het thema:
ColorValue(AppTheme.palette.themePrimary)