Aller au contenu principal

LgGridMonthColumn

LgGridMonthColumn<TColumnValue> est une colonne de LgGridView spécialisée dans le mois d'une valeur date : le format d'affichage par défaut est MM/yyyy et l'édition ouvre le sélecteur au niveau mois (comme LgMonthBox).

<Columns Context="item">
<LgGridMonthColumn @bind-Value="item.BillingMonth" Title="#BillingMonth" />
</Columns>
  • Espace de noms : Lagoon.UI.Components
  • Hérite de : LgGridDateColumn<TColumnValue> → LgGridBaseValueColumn<TColumnValue> → LgGridBaseColumn
  • Package NuGet : Lagoon.UI.GridView

Utilisation​

Démonstration​

Essayez ce composant dans le showcase Lagoon.

Colonne mois éditable​

InvoiceListPage.razor
<LgGridView StateId="invoices-month-column"
Items="_invoices"
EditMode="GridEditMode.Cell"
Title="#InvoicesGridTitle">
<Columns Context="item">
<LgGridTextColumn @bind-Value="item.Number" Title="#InvoiceNumber" />
<LgGridMonthColumn @bind-Value="item.BillingMonth"
Title="#BillingMonth"
CanEdit="true" />
</Columns>
</LgGridView>
InvoiceListPage.razor.cs
public partial class InvoiceListPage : LgPage
{
// Lignes affichées par la grille : le mois de facturation est porté par une date complète.
private readonly List<InvoiceVm> _invoices = new();

private sealed class InvoiceVm
{
public string Number { get; set; }
public DateTime? BillingMonth { get; set; }
}
}

Format, bornes et calcul​

DisplayFormat remplace le format MM/yyyy par défaut (ex. MMMM yyyy pour le nom du mois). Min / Max bornent la sélection dans le calendrier. CalculationType affiche un calcul en pied de colonne.

ContractListPage.razor
<LgGridView StateId="contracts-month-column" Items="_contracts" Title="#ContractsGridTitle">
<Columns Context="item">
<LgGridTextColumn @bind-Value="item.Reference" Title="#ContractReference" />
<LgGridMonthColumn @bind-Value="item.StartMonth"
Title="#StartMonth"
DisplayFormat="MMMM yyyy"
Min="_minDate"
Max="_maxDate"
CalculationType="DataCalculationType.Min" />
</Columns>
</LgGridView>
ContractListPage.razor.cs
public partial class ContractListPage : LgPage
{
// Fenêtre contractuelle autorisée : borne le sélecteur de mois des cellules en édition.
private readonly DateTime _minDate = new(2020, 1, 1);
private readonly DateTime _maxDate = new(2030, 12, 31);

private readonly List<ContractVm> _contracts = new();

private sealed class ContractVm
{
public string Reference { get; set; }
public DateTime? StartMonth { get; set; }
}
}

Propriétés​

Toutes les propriétés [Parameter] du composant, y compris celles héritées.

NomTypeDéfautDéclaré dansDescription
MaxDateTime?nullLgGridDateColumnDate la plus tardive sélectionnable en édition ; les dates ultérieures sont désactivées.
MinDateTime?nullLgGridDateColumnDate la plus ancienne sélectionnable en édition ; les dates antérieures sont désactivées.
CellContentRenderFragment<TColumnValue>nullLgGridBaseValueColumnTemplate personnalisé de la cellule en affichage.
CustomEditTypeTypenullLgGridBaseValueColumnType de composant utilisé en mode édition à la place du composant par défaut.
EditCellContentRenderFragment<TColumnValue>nullLgGridBaseValueColumnTemplate personnalisé de la cellule en édition.
ValueTColumnValue—LgGridBaseValueColumnValeur liée (@bind-Value).
ValueChangedEventCallback<TColumnValue>—LgGridBaseValueColumnCallback de mise à jour de la valeur liée.
ValueExpressionExpression<Func<TColumnValue>>—LgGridBaseValueColumnExpression identifiant la propriété liée (porte le tri, le filtre et les calculs).
AllowFilterbooltrueLgGridBaseFilterableColumnActive le filtre de la colonne (désactivé automatiquement sans expression de filtre).
AllowHidebooltrueLgGridBaseColumnAutorise l'utilisateur à masquer la colonne.
AllowSortbooltrueLgGridBaseColumnActive le tri de la colonne (désactivé automatiquement sans expression de tri).
AriaLabelstringnullLgGridBaseColumnValeur de l'attribut aria-label de la colonne.
AriaLabelledBystringnullLgGridBaseColumnValeur de l'attribut aria-labelledby de la colonne.
CalculationCssClassstringnullLgGridBaseColumnClasses CSS de la cellule de calcul.
CalculationDisplayFormatstringnullLgGridBaseColumnFormat d'affichage de la cellule de calcul.
CalculationTypeDataCalculationTypeNoneLgGridBaseColumnCalcul affiché en pied de colonne (ignoré sans ValueExpression).
CanAddbooltrueLgGridBaseColumnAutorise la saisie de la colonne dans la ligne d'ajout.
CanEditbooltrueLgGridBaseColumnAutorise l'édition des cellules de la colonne.
ColSpanint-1LgGridBaseColumnNombre de colonnes occupées par la cellule.
ConfirmationMessagestringnullLgGridBaseColumnMessage de confirmation avant modification (édition par cellule uniquement).
CssClassstringnullLgGridBaseColumnClasses CSS appliquées à toutes les cellules de la colonne.
DefaultFilterFilternullLgGridBaseFilterableColumnFiltre appliqué par défaut.
DefaultFrozenboolfalseLgGridBaseColumnFige la colonne par défaut.
DefaultSortDirectionDataSortDirectionNoneLgGridBaseColumnDirection de tri par défaut.
DefaultVisiblebooltrueLgGridBaseColumnAffiche la colonne par défaut.
DefaultWidthstring"1fr"LgGridBaseColumnLargeur par défaut de la colonne.
DisplayFormatstring"MM/yyyy"LgGridBaseColumnFormat d'affichage de la valeur.
ExportablebooltrueLgGridBaseColumnInclut la colonne dans les exports.
ExportTitlestringnullLgGridBaseColumnTitre utilisé à l'export (le Title par défaut).
ExportValueAsStringboolfalseLgGridBaseColumnForce l'export de la valeur sous forme de texte.
FilterCellContentRenderFragment<FilterContext>nullLgGridBaseFilterableColumnTemplate personnalisé de la cellule de filtre.
FilterDisableSelectionboolfalseLgGridBaseFilterableColumnMasque l'onglet de sélection de valeurs dans l'éditeur de filtre.
FilterExpressionLambdaExpressionnullLgGridBaseFilterableColumnExpression de filtre (à défaut, ValueExpression est utilisée).
FilterShowAllItemsbool?nullLgGridBaseFilterableColumnPropose toutes les valeurs dans le filtre, indépendamment des filtres des autres colonnes.
GroupExpressionLambdaExpressionnullLgGridBaseColumnExpression de regroupement.
GroupNamestringnullLgGridBaseColumnNom du groupe d'en-têtes de la colonne.
HeaderCellContentRenderFragmentnullLgGridBaseColumnTemplate personnalisé de la cellule d'en-tête.
HeaderCssClassstringnullLgGridBaseColumnClasses CSS de la cellule d'en-tête.
HeaderTooltipstringnullLgGridBaseColumnBulle d'aide de l'en-tête.
HideContentboolfalseLgGridBaseColumnMasque le contenu des cellules.
KeystringnullLgGridBaseColumnIdentifiant unique de la colonne (déduit de ValueExpression si absent).
LambdaExpressionLambdaExpressionnullLgGridBaseColumnExpression commune de tri et de filtre.
PlaceholderstringnullLgGridDateColumnTexte indicatif affiché dans l'éditeur de la cellule.
MaxWidthint0LgGridBaseColumnLargeur maximale de la colonne.
MinSearchFilterCharacterint0LgGridBaseFilterableColumnNombre minimal de caractères avant de lancer la recherche dans le filtre.
MinWidthint0LgGridBaseColumnLargeur minimale de la colonne.
OnCellClickEventCallback<GridViewCellClickEventArgs<TItem>>—LgGridBaseColumnCallback déclenché au clic sur une cellule de la colonne.
ResizablebooltrueLgGridBaseColumnAutorise le redimensionnement de la colonne.
TitlestringnullLgGridBaseColumnTitre de la colonne.
WeightExpressionLambdaExpressionnullLgGridBaseColumnExpression du poids pour la moyenne pondérée (CalculationType="Average").
Paramètres en cascade

La colonne reçoit sa grille parente (LgGridView<TItem>) et son contexte de rendu par des paramètres en cascade fournis par le LgGridView — vous n'avez pas à les définir.

Méthodes & événements​

ÉvénementTypeDescription
OnCellClickEventCallback<GridViewCellClickEventArgs<TItem>>Au clic sur une cellule de la colonne.
ValueChangedEventCallback<TColumnValue>À la modification de la valeur d'une cellule (@bind-Value).

Énumérations associées​

Les énumérations héritées sont documentées sur la colonne de base : DataCalculationType et DataSortDirection sur LgGridDateColumn, les modes d'édition (GridEditMode) sur LgGridView.

Bonnes pratiques / accessibilité​

  • La valeur liée reste une date complète : seul le mois est affiché et édité. Pour saisir un mois seul (int) dans un formulaire, utilisez LgMonthBox.
  • Le filtre appliqué est un filtre date : il porte sur la valeur complète, pas seulement sur le mois affiché.
Référence complète

Fiche générée depuis les sources : Référence API — LgGridMonthColumn.

Composants liés​