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
<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>
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.
<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>
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.
| Nom | Type | Défaut | Déclaré dans | Description |
|---|---|---|---|---|
Max | DateTime? | null | LgGridDateColumn | Date la plus tardive sélectionnable en édition ; les dates ultérieures sont désactivées. |
Min | DateTime? | null | LgGridDateColumn | Date la plus ancienne sélectionnable en édition ; les dates antérieures sont désactivées. |
CellContent | RenderFragment<TColumnValue> | null | LgGridBaseValueColumn | Template personnalisé de la cellule en affichage. |
CustomEditType | Type | null | LgGridBaseValueColumn | Type de composant utilisé en mode édition à la place du composant par défaut. |
EditCellContent | RenderFragment<TColumnValue> | null | LgGridBaseValueColumn | Template personnalisé de la cellule en édition. |
Value | TColumnValue | — | LgGridBaseValueColumn | Valeur liée (@bind-Value). |
ValueChanged | EventCallback<TColumnValue> | — | LgGridBaseValueColumn | Callback de mise à jour de la valeur liée. |
ValueExpression | Expression<Func<TColumnValue>> | — | LgGridBaseValueColumn | Expression identifiant la propriété liée (porte le tri, le filtre et les calculs). |
AllowFilter | bool | true | LgGridBaseFilterableColumn | Active le filtre de la colonne (désactivé automatiquement sans expression de filtre). |
AllowHide | bool | true | LgGridBaseColumn | Autorise l'utilisateur à masquer la colonne. |
AllowSort | bool | true | LgGridBaseColumn | Active le tri de la colonne (désactivé automatiquement sans expression de tri). |
AriaLabel | string | null | LgGridBaseColumn | Valeur de l'attribut aria-label de la colonne. |
AriaLabelledBy | string | null | LgGridBaseColumn | Valeur de l'attribut aria-labelledby de la colonne. |
CalculationCssClass | string | null | LgGridBaseColumn | Classes CSS de la cellule de calcul. |
CalculationDisplayFormat | string | null | LgGridBaseColumn | Format d'affichage de la cellule de calcul. |
CalculationType | DataCalculationType | None | LgGridBaseColumn | Calcul affiché en pied de colonne (ignoré sans ValueExpression). |
CanAdd | bool | true | LgGridBaseColumn | Autorise la saisie de la colonne dans la ligne d'ajout. |
CanEdit | bool | true | LgGridBaseColumn | Autorise l'édition des cellules de la colonne. |
ColSpan | int | -1 | LgGridBaseColumn | Nombre de colonnes occupées par la cellule. |
ConfirmationMessage | string | null | LgGridBaseColumn | Message de confirmation avant modification (édition par cellule uniquement). |
CssClass | string | null | LgGridBaseColumn | Classes CSS appliquées à toutes les cellules de la colonne. |
DefaultFilter | Filter | null | LgGridBaseFilterableColumn | Filtre appliqué par défaut. |
DefaultFrozen | bool | false | LgGridBaseColumn | Fige la colonne par défaut. |
DefaultSortDirection | DataSortDirection | None | LgGridBaseColumn | Direction de tri par défaut. |
DefaultVisible | bool | true | LgGridBaseColumn | Affiche la colonne par défaut. |
DefaultWidth | string | "1fr" | LgGridBaseColumn | Largeur par défaut de la colonne. |
DisplayFormat | string | "MM/yyyy" | LgGridBaseColumn | Format d'affichage de la valeur. |
Exportable | bool | true | LgGridBaseColumn | Inclut la colonne dans les exports. |
ExportTitle | string | null | LgGridBaseColumn | Titre utilisé à l'export (le Title par défaut). |
ExportValueAsString | bool | false | LgGridBaseColumn | Force l'export de la valeur sous forme de texte. |
FilterCellContent | RenderFragment<FilterContext> | null | LgGridBaseFilterableColumn | Template personnalisé de la cellule de filtre. |
FilterDisableSelection | bool | false | LgGridBaseFilterableColumn | Masque l'onglet de sélection de valeurs dans l'éditeur de filtre. |
FilterExpression | LambdaExpression | null | LgGridBaseFilterableColumn | Expression de filtre (à défaut, ValueExpression est utilisée). |
FilterShowAllItems | bool? | null | LgGridBaseFilterableColumn | Propose toutes les valeurs dans le filtre, indépendamment des filtres des autres colonnes. |
GroupExpression | LambdaExpression | null | LgGridBaseColumn | Expression de regroupement. |
GroupName | string | null | LgGridBaseColumn | Nom du groupe d'en-têtes de la colonne. |
HeaderCellContent | RenderFragment | null | LgGridBaseColumn | Template personnalisé de la cellule d'en-tête. |
HeaderCssClass | string | null | LgGridBaseColumn | Classes CSS de la cellule d'en-tête. |
HeaderTooltip | string | null | LgGridBaseColumn | Bulle d'aide de l'en-tête. |
HideContent | bool | false | LgGridBaseColumn | Masque le contenu des cellules. |
Key | string | null | LgGridBaseColumn | Identifiant unique de la colonne (déduit de ValueExpression si absent). |
LambdaExpression | LambdaExpression | null | LgGridBaseColumn | Expression commune de tri et de filtre. |
Placeholder | string | null | LgGridDateColumn | Texte indicatif affiché dans l'éditeur de la cellule. |
MaxWidth | int | 0 | LgGridBaseColumn | Largeur maximale de la colonne. |
MinSearchFilterCharacter | int | 0 | LgGridBaseFilterableColumn | Nombre minimal de caractères avant de lancer la recherche dans le filtre. |
MinWidth | int | 0 | LgGridBaseColumn | Largeur minimale de la colonne. |
OnCellClick | EventCallback<GridViewCellClickEventArgs<TItem>> | — | LgGridBaseColumn | Callback déclenché au clic sur une cellule de la colonne. |
Resizable | bool | true | LgGridBaseColumn | Autorise le redimensionnement de la colonne. |
Title | string | null | LgGridBaseColumn | Titre de la colonne. |
WeightExpression | LambdaExpression | null | LgGridBaseColumn | Expression du poids pour la moyenne pondérée (CalculationType="Average"). |
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énement | Type | Description |
|---|---|---|
OnCellClick | EventCallback<GridViewCellClickEventArgs<TItem>> | Au clic sur une cellule de la colonne. |
ValueChanged | EventCallback<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, utilisezLgMonthBox. - Le filtre appliqué est un filtre date : il porte sur la valeur complète, pas seulement sur le mois affiché.
Fiche générée depuis les sources : Référence API — LgGridMonthColumn.
Composants liés
LgGridView— la grille de données qui héberge la colonne.LgGridDateColumn— colonne date de base (jour).LgGridWeekColumn— colonne semaine.LgGridYearColumn— colonne année.LgMonthBox— champ de sélection de mois utilisé hors grille.