Aller au contenu principal

Configuration application

Cette page regroupe la configuration globale de l'application : nom affiché, environnement, logos, comportement des boutons, reset des champs, page À propos, format HTTP par défaut et options globales de LgGridView.

Nom de l'application​

Par défaut, le nom de l'application correspond au nom du projet Client sans le suffixe .Client. Pour le personnaliser, renseignez la clé App:Name dans l'appsettings.json du projet Server.

appsettings.json
{
"App": {
"Name": "My Lagoon App"
}
}

Environnement affiché dans le header​

Le bandeau d'environnement du header utilise les clés App:EnvironmentName ou App:EnvironmentDisplayName, et App:EnvironmentColor.

appsettings.json
{
"App": {
"EnvironmentName": "RECETTE",
"EnvironmentDisplayName": "Recette",
"EnvironmentColor": "#195E75"
}
}

Logo de l'application​

Le logo principal est configuré dans les styles du projet client avec la variable SCSS $header-logo.

Client/resources/styles/main.scss
$header-logo: "~/images/header-logo.png";

Le logo situé à droite dans le header est configuré avec $toolbar-logo.

Client/resources/styles/main.scss
$toolbar-logo: "~/images/toolbar-logo.png";

Mode d'affichage des pages​

Le mode page simple remplace la page active lors d'une navigation. Le mode onglets s'active avec IsTabbed="true" sur LgApp.

App.razor
<LgApp DefaultLayout="typeof(PageLayout)" IsTabbed="true" ShowHeader="true">
<StartupTabs>
<LgStartupTab Link="Pages.Index.Link()" />
</StartupTabs>
<ChildContent>
<MenuConfiguration />
</ChildContent>
</LgApp>

Comportements globaux dans OnConfigureBehavior​

La configuration cliente se fait dans Client/Main.cs en surchargeant OnConfigureBehavior(ApplicationBehavior app).

Main.cs
public class Main : LgCustomApplication
{
protected override void OnConfigureBehavior(ApplicationBehavior app)
{
// Définit la taille par défaut des boutons dans les toolbars applicatives.
app.ToolbarButtonSize = ButtonSize.Medium;
app.FrameToolbarButtonSize = ButtonSize.Small;
app.ActionPanelToolbarButtonSize = ButtonSize.Large;
}
}

Bouton de reset des inputs et des selects​

La configuration globale du bouton de reset des champs s'applique via app.ResetButton. La configuration des listes déroulantes se fait via app.Select et peut reprendre ou spécialiser ces valeurs.

Main.cs
public class Main : LgCustomApplication
{
protected override void OnConfigureBehavior(ApplicationBehavior app)
{
// Masque le bouton de reset sur les champs de saisie.
app.ResetButton.HideAlwaysResetButton = true;
app.ResetButton.ResetText = "#reset";
app.ResetButton.ResetTextAriaLabel = "#resetAriaLabel";

// Spécialise le texte de reset pour LgSelect et LgSelectMultiple.
app.Select.ResetText = "#resetSelection";
}
}

Page À propos​

Informations additionnelles​

Ajoutez des informations additionnelles dans la section App:About:AdditionalInformation.

appsettings.json
{
"App": {
"About": {
"AdditionalInformation": [
{
"Label": "#aboutSupportLabel",
"Description": "support@example.com",
"Uri": "mailto:support@example.com"
}
]
}
}
}

AdditionalInformation est un tableau : vous pouvez ajouter plusieurs entrées.

Logo owner​

OwnerLogoUri affiche le logo principal de l'owner dans la page À propos.

Main.cs
public class Main : LgCustomApplication
{
protected override void OnConfigureBehavior(ApplicationBehavior app)
{
// Affiche le logo du client dans la page À propos.
app.OwnerLogoUri = "_content/MyCompany/logo.png";
}
}

Logos développeurs​

DevelopedByLogoUri affiche les logos de la zone Développé par.

Main.cs
public class Main : LgCustomApplication
{
protected override void OnConfigureBehavior(ApplicationBehavior app)
{
// Affiche plusieurs logos de contributeurs dans la page À propos.
app.DevelopedByLogoUri = new List<string>
{
"_content/MyCompany/logo1.png",
"_content/MyCompany/logo2.png"
};
}
}

Format HTTP par défaut​

Le client Lagoon peut demander du MessagePack ou du JSON. Le comportement par défaut est piloté par DefaultAcceptHeader.

Main.cs
public class Main : LgCustomApplication
{
protected override void OnConfigureBehavior(ApplicationBehavior app)
{
// Utilise MessagePack pour les échanges HTTP compatibles.
app.DefaultAcceptHeader = DefaultAcceptHeader.MessagePack;
}
}

Options globales de LgGridView​

Certaines options de LgGridView peuvent être modifiées globalement dans OnConfigureBehavior. Elles s'appliquent ensuite aux grilles affichées par l'application, sauf surcharge locale.

Main.cs
public class Main : LgCustomApplication
{
protected override void OnConfigureBehavior(ApplicationBehavior app)
{
// Configure les comportements communs à toutes les grilles.
app.GridView(options =>
{
options.ExportWithFilters = true;
options.ProfileStorageMode = GridViewProfileStorage.Remote;
options.SharedProfileAdministratorPolicy = "!*";
options.DisplayDefaultTooltipHeader = false;
options.ShowSummaryFilters = true;
});
}
}

Liste des options vérifiées​

OptionRôle
AddItemOnTopAffiche la ligne d'ajout en haut.
DefaultPageSizeNombre de lignes par page par défaut.
DisplayDefaultTooltipHeaderForce l'affichage des tooltips sur les en-têtes.
DisplayInputPageSelectorAffiche le sélecteur de page sous forme de saisie.
DisplaySuccessSaveMessageAffiche un message de succès après édition d'une cellule.
ExportableActive l'export des grilles.
ExportDisplayedColumnsExporte uniquement les colonnes affichées.
ExportWithFiltersExporte avec les filtres actifs par défaut.
MaxSortedColumnsNombre maximal de colonnes triées en même temps (4 par défaut, 0 : pas de limite ; une valeur négative lève une ArgumentOutOfRangeException). Surchargé par le paramètre MaxSortedColumns de la grille.
PagerOnTopAffiche le pager en haut de la grille.
PaginationSizeSelectorDéfinit les tailles de page proposées.
ProfileStorageModeDéfinit le stockage des profils : Local ou Remote.
SharedProfileAdministratorPolicyPolicy autorisant l'administration des profils partagés.
ShowSummaryFiltersAffiche le résumé des filtres.
TooltipPositionPosition par défaut des tooltips.
ProfileSaveModeDéfinit le mode de sauvegarde des profils.
ProfileFeaturesÉléments enregistrés dans les profils et rechargés depuis eux (GridFeature : Filter, Sort, Move, Visibility, Freeze, Resize, Group, Paging ; tous par défaut, les autres flags sont ignorés ; Move et Freeze vont ensemble). Surchargé par le paramètre ProfileFeatures de la grille.
ExportConfigurationRegroupe les options d'export.
ResetInputConfigurationConfigure le bouton de reset des filtres de grille.

Voir aussi​