For the complete documentation index, see llms.txt. This page is also available as Markdown.

Tableau

Composant tableau pour les applications universelles

Les tableaux affichent des ensembles de données. Ils sont entièrement personnalisables.

Les tableaux présentent l'information d'une manière facile à parcourir, permettant aux utilisateurs de repérer des tendances et des observations. Ils peuvent être intégrés dans du contenu principal, tel que des cartes.

Tableau simple

Un exemple simple sans fioritures. Les colonnes du tableau sont définies à partir des données.

Tableau avec colonnes personnalisées

Définissez des colonnes personnalisées pour votre tableau.

Tableau avec rendu de colonne personnalisé

Définissez le rendu des colonnes. Le tri et l'exportation continuent de fonctionner pour le tableau.

Largeur des colonnes du tableau

La largeur des colonnes peut être définie à l'aide du paramètre -Width. Vous pouvez également choisir de tronquer les colonnes qui dépassent cette largeur.

Filtres

Vous pouvez configurer des filtres personnalisés par colonne. Le tableau prend en charge les filtres de type text, select, fuzzy, slider, range, date, number et autocomplete.

Options statiques pour les filtres de type sélection

Lors de l'utilisation du traitement côté serveur, les filtres disponibles peuvent ne pas afficher la gamme complète d'options, car la liste déroulante de sélection n'a accès qu'à la page courante de résultats. Pour éviter cela, vous pouvez utiliser le paramètre -Options sur New-UDTableColumn.

Recherche

Pour activer la recherche, utilisez le paramètre -ShowSearch sur New-UDTable.

Lorsque vous utilisez des colonnes personnalisées, vous devrez ajouter le paramètre -IncludeInSearch aux colonnes que vous souhaitez inclure dans la recherche.

Tableau avec traitement côté serveur

Traitez les données côté serveur afin d'effectuer la pagination, le filtrage, le tri et la recherche dans des systèmes tels que SQL. Pour implémenter un tableau côté serveur, vous utiliserez le paramètre -LoadData. Ce paramètre accepte un ScriptBlock. La variable $EventData contient des informations sur l'état du tableau. Vous pouvez utiliser des cmdlets pour traiter les données en fonction de ces informations.

Structure de $EventData

L'objet $EventData contient les propriétés suivantes.

Nom de la propriété
Type
Description

Filters

Hashtable[] @{ id = 'fieldName'

value = 'filterValue' }

Une liste de valeurs de filtre. Chaque table de hachage possède une propriété Id et une propriété Value.

OrderBy

Hashtable @{ field = "fieldName" }

Nom de la propriété selon laquelle trier.

OrderDirection

string

asc ou desc selon l'ordre de tri.

Page

int

La page courante (à partir de 0).

PageSize

int

La taille de page sélectionnée.

Properties

string[]

Un tableau des propriétés affichées dans le tableau.

Search

string

Une chaîne de recherche fournie par l'utilisateur.

TotalCount

int

Le nombre total d'enregistrements avant filtrage ou pagination.

Exemple

Récupération des données affichées

Vous pouvez souhaiter permettre à l'utilisateur d'agir sur l'ensemble actuel de données affichées. Pour ce faire, utilisez Get-UDElement dans l'objet d'entrée à partir duquel vous souhaitez récupérer les données et obtenez le tableau par son identifiant. Une fois que vous avez l'élément, vous pouvez utiliser la propriété Data de l'élément pour obtenir un tableau des lignes actuellement affichées.

Pagination

Par défaut, la pagination est désactivée et les tableaux s'agrandissent en fonction du nombre de lignes de données fournies. Vous pouvez activer la pagination en utilisant le cmdlet -ShowPagination (alias -Paging). Vous pouvez configurer la taille de page à l'aide du cmdlet -PageSize.

Désactiver l'option « Afficher tout » pour la taille de page

Par défaut, le sélecteur de taille de page propose une option permettant d'afficher toutes les lignes. Si vous souhaitez empêcher les utilisateurs de faire cela, utilisez le cmdlet -DisablePageSizeAll.

Emplacement de la pagination

Vous pouvez modifier l'emplacement du contrôle de pagination en utilisant le paramètre -PaginationLocation. Il accepte les valeurs top, bottom et both.

Pagination Location

Tailles de page

La taille de page est, par défaut, définie à 5. Les utilisateurs peuvent ajuster le nombre de lignes par page à l'aide de la liste déroulante Lignes par page. Vous pouvez ajuster la taille de page par défaut en utilisant le paramètre -PageSize. Pour ajuster les valeurs disponibles dans la liste déroulante Lignes par page, vous pouvez utiliser un tableau d'entiers transmis au paramètre -PageSizeOptions.

Tri

Pour activer le tri d'un tableau, utilisez le paramètre -ShowSort. Lorsque vous activez le tri, vous pouvez cliquer sur les en-têtes du tableau pour trier le tableau. Par défaut, le tri multiple est activé. Pour effectuer un tri multiple, maintenez la touche Maj enfoncée et cliquez sur un en-tête de colonne.

Vous pouvez contrôler quelles colonnes peuvent être triées en utilisant New-UDTableColumn et le paramètre -ShowSort.

Désactiver la suppression du tri

Par défaut, le tri d'un tableau comporte 3 états : non trié, croissant et décroissant. Si vous souhaitez désactiver l'état non trié, utilisez le paramètre -DisableSortRemove de New-UDTable.

Sélection

Données de tableau statiques

Les tableaux prennent en charge la sélection de lignes. Vous pouvez créer un gestionnaire d'événements pour le paramètre OnRowSelected afin de recevoir une notification lorsqu'une nouvelle ligne est sélectionnée ou désélectionnée, ou vous pouvez utiliser Get-UDElement pour récupérer l'ensemble actuel de lignes sélectionnées.

L'exemple suivant crée un tableau avec la sélection de lignes activée. Un message toast s'affiche lors d'un clic sur la ligne ou sur le bouton GET Rows.

Row selection

La variable $EventData pour l'événement -OnRowSelected inclura toutes les colonnes en tant que propriétés, ainsi qu'une propriété selected indiquant si la ligne a été sélectionnée ou désélectionnée.

Par exemple, les données du tableau de services ressembleraient à ceci.

Tableaux dynamiques (côté serveur)

Lors de l'utilisation de la sélection avec -LoadData, le paramètre -OnRowSelected $EventData contiendra les identifiants des lignes et non l'ensemble des données de la ligne. Il indiquera tout de même si la ligne a été sélectionnée ou désélectionnée.

Lignes réductibles

Vous pouvez inclure des informations supplémentaires dans le tableau en utilisant le paramètre -OnRowExpand de New-UDTable. Il accepte un ScriptBlock que vous pouvez utiliser pour retourner des composants supplémentaires.

Exportation

Les tableaux prennent en charge l'exportation des données. Vous pouvez exporter en CSV, XLSX, JSON ou PDF. Vous pouvez définir quelles colonnes inclure dans une exportation et choisir d'exporter uniquement la page courante ou toutes les données du tableau.

Colonnes masquées

Les colonnes masquées vous permettent d'inclure des données qui ne sont pas affichées dans le tableau mais qui sont incluses dans les données exportées.

L'exemple suivant masque la colonne StartType pour l'utilisateur, mais l'inclut dans l'exportation.

Exportation côté serveur

Vous pouvez contrôler la fonctionnalité d'exportation à l'aide d'un bloc de script PowerShell. Cela est utile lors de l'exportation depuis des sources côté serveur telles que des tables SQL Server.

Dans cet exemple, j'ai une table SQL qui contient des podcasts. Lors de l'exportation, vous recevrez des informations sur l'état actuel du tableau afin de personnaliser les données exportées.

Personnalisation des options d'exportation

Vous pouvez décider quelles options d'exportation présenter à vos utilisateurs en utilisant le cmdlet -ExportOption. L'exemple suivant n'afficherait que l'option d'exportation CSV.

Personnalisation des étiquettes

Vous pouvez utiliser le paramètre -TextOption ainsi que le cmdlet New-UDTableTextOption pour définir les champs de texte du tableau.

Actualisation avec un bouton

Paramètre Data

Vous pouvez actualiser un tableau de manière externe en plaçant le tableau dans une région dynamique et en utilisant Sync-UDElement.

Cet exemple crée un bouton pour actualiser le tableau.

Paramètre LoadData

Si vous utilisez le paramètre -LoadData, vous pouvez synchroniser le tableau directement. Cela présente l'avantage de maintenir l'état du tableau, tel que la page et le filtrage, après l'actualisation.

Afficher le bouton d'actualisation

Vous pouvez utiliser le paramètre -ShowRefresh pour fournir un bouton d'actualisation pour les tableaux côté serveur.

Couleurs de lignes alternées

Vous pouvez utiliser un thème pour créer un tableau avec des couleurs de lignes alternées.

Styles de lignes personnalisés

Style de ligne personnalisé du tableau

Utilisez le paramètre -OnRowStyle pour styliser les lignes en fonction de leur contenu. Retournez une table de hachage avec des styles CSS pour la ligne.

API

Mis à jour

Ce contenu vous a-t-il été utile ?