Tabelle
Tabellen zeigen Datensätze an. Sie können vollständig angepasst werden.
Tabellen stellen Informationen so dar, dass sie leicht zu überblicken sind, sodass Benutzer nach Mustern und Erkenntnissen suchen können. Sie können in primäre Inhalte wie Karten eingebettet werden.
Einfache Tabelle

Ein einfaches Beispiel ohne Extras. Die Tabellenspalten werden aus den Daten definiert.
Tabelle mit benutzerdefinierten Spalten

Definieren Sie benutzerdefinierte Spalten für Ihre Tabelle.
Tabelle mit benutzerdefiniertem Spalten-Rendering

Definieren Sie das Spalten-Rendering. Sortierung und Export funktionieren für die Tabelle weiterhin.
Tabellenspaltenbreite
Die Spaltenbreite kann mit dem Parameter -Width definiert werden. Sie können auch entscheiden, Spalten abzuschneiden, die über diese Breite hinausgehen.
Filter
Sie können benutzerdefinierte Filter pro Spalte konfigurieren. Die Tabelle unterstützt die Filter text, select, fuzzy , slider, range, date , number und autocomplete.

Statische Optionen für Select-Filter
Bei serverseitiger Verarbeitung zeigen die verfügbaren Filter möglicherweise nicht die vollständige Auswahl an Optionen an, da das Select-Dropdown nur Zugriff auf die aktuelle Ergebnisseite hat. Um dies zu vermeiden, können Sie den Parameter -Options von New-UDTableColumn verwenden.
Suche
Um die Suche zu aktivieren, verwenden Sie den Parameter -ShowSearch von New-UDTable.
Wenn Sie benutzerdefinierte Spalten verwenden, müssen Sie den Parameter -IncludeInSearch zu den Spalten hinzufügen, die Sie in die Suche einbeziehen möchten.
Tabelle mit serverseitiger Verarbeitung
Verarbeiten Sie Daten auf dem Server, damit Sie Paging, Filterung, Sortierung und Suche in Systemen wie SQL durchführen können. Um eine serverseitige Tabelle zu implementieren, verwenden Sie den Parameter -LoadData. Dieser Parameter akzeptiert einen ScriptBlock. Die Variable $EventData enthält Informationen über den Zustand der Tabelle. Sie können Cmdlets verwenden, um die Daten auf Basis dieser Informationen zu verarbeiten.
$EventData-Struktur
Das $EventData-Objekt enthält die folgenden Eigenschaften.
Filter
Hashtable[] @{ id = 'fieldName'
value = 'filterValue' }
Eine Liste von Filterwerten. Jede Hashtable hat eine Eigenschaft Id und eine Eigenschaft Value.
OrderBy
Hashtable @{ field = "fieldName" }
Eigenschaftsname, nach dem sortiert werden soll.
OrderDirection
string
asc oder desc, abhängig von der Sortierreihenfolge.
Page
int
Die aktuelle Seite (beginnend bei 0).
PageSize
int
Die ausgewählte Seitengröße.
Properties
string[]
Ein Array der in der Tabelle angezeigten Eigenschaften.
Search
string
Eine vom Benutzer angegebene Suchzeichenfolge.
TotalCount
int
Die Gesamtanzahl der Datensätze vor Filterung oder Paging.
Beispiel
Angezeigte Daten abrufen
Möglicherweise möchten Sie dem Benutzer erlauben, Aktionen auf den aktuell angezeigten Datensatz anzuwenden. Verwenden Sie dazu Get-UDElement im Eingabeobjekt, aus dem Sie die Daten abrufen möchten, und rufen Sie die Tabelle anhand der Id ab. Sobald Sie das Element haben, können Sie die Eigenschaft Data des Elements verwenden, um ein Array der aktuell angezeigten Zeilen zu erhalten.
Paging
Standardmäßig ist Paging deaktiviert und Tabellen wachsen entsprechend der Anzahl der Datenzeilen, die Sie bereitstellen. Sie können Paging mit dem Cmdlet -ShowPagination (Alias -Paging) aktivieren. Die Seitengröße können Sie mit dem Cmdlet -PageSize konfigurieren.
Seitengröße "Alle" deaktivieren
Standardmäßig bietet die Seitengrößenauswahl eine Option zum Anzeigen aller Zeilen. Wenn Sie verhindern möchten, dass Benutzer dies tun, verwenden Sie das Cmdlet -DisablePageSizeAll.
Position der Seitennavigation
Sie können die Position des Seitennavigations-Steuerelements mit dem Parameter -PaginationLocation ändern. Er akzeptiert top, bottom und both.

Seitengrößen
Die Seitengröße ist standardmäßig auf 5 festgelegt. Benutzer können die Anzahl der Zeilen pro Seite über das Dropdown "Zeilen pro Seite" anpassen. Sie können die Standard-Seitengröße mit dem Parameter -PageSize anpassen. Um die im Dropdown "Zeilen pro Seite" verfügbaren Werte anzupassen, können Sie ein Array von Ganzzahlen an den Parameter -PageSizeOptions übergeben.
Sortierung
Um die Sortierung für eine Tabelle zu aktivieren, verwenden Sie den Parameter -ShowSort. Wenn Sie die Sortierung aktivieren, können Sie auf die Tabellenkopfzeilen klicken, um die Tabelle durch Klicken auf die Kopfzeilen zu sortieren. Standardmäßig ist Mehrfachsortierung aktiviert. Halten Sie für die Mehrfachsortierung die Umschalttaste und klicken Sie auf eine Spaltenkopfzeile.
Sie können mit New-UDTableColumn und dem Parameter -ShowSort steuern, welche Spalten sortiert werden können.
Entfernen der Sortierung deaktivieren
Standardmäßig hat die Sortierung einer Tabelle 3 Zustände: unsortiert, aufsteigend und absteigend. Wenn Sie den unsortierten Zustand deaktivieren möchten, verwenden Sie den Parameter -DisableSortRemove von New-UDTable.
Auswahl
Statische Tabellendaten
Tabellen unterstützen die Auswahl von Zeilen. Sie können einen Event-Handler für den Parameter OnRowSelected erstellen, um zu erfahren, wann eine neue Zeile ausgewählt oder abgewählt wird, oder Sie können Get-UDElement verwenden, um den aktuellen Satz ausgewählter Zeilen abzurufen.
Das folgende Beispiel erstellt eine Tabelle mit aktivierter Zeilenauswahl. Ein Toast wird angezeigt, wenn auf die Zeile oder auf die Schaltfläche GET Rows geklickt wird.

Die Variable $EventData für das Event -OnRowSelected enthält alle Spalten als Eigenschaften sowie eine Eigenschaft "selected", die angibt, ob die Zeile ausgewählt oder abgewählt wurde.
Zum Beispiel würden die Daten der Dienste-Tabelle so aussehen.
Dynamische (serverseitige) Tabellen
Wenn Sie Auswahl und -LoadData verwenden, enthält -OnRowSelected $EventData die IDs der Zeilen und nicht die gesamten Zeilendaten. Es wird weiterhin angegeben, ob die Zeile ausgewählt oder abgewählt wurde.
Aufklappbare Zeilen
Sie können zusätzliche Informationen in der Tabelle einbinden, indem Sie den Parameter -OnRowExpand von New-UDTable verwenden. Er akzeptiert einen ScriptBlock, mit dem Sie zusätzliche Komponenten zurückgeben können.

Exportieren
Tabellen unterstützen das Exportieren der Daten innerhalb der Tabelle. Sie können als CSV, XLSX, JSON oder PDF exportieren. Sie können definieren, welche Spalten in einen Export einbezogen werden, und wählen, ob nur die aktuelle Seite oder alle Daten der Tabelle exportiert werden.

Ausgeblendete Spalten
Ausgeblendete Spalten ermöglichen es Ihnen, Daten einzubinden, die nicht in der Tabelle angezeigt werden, aber in den exportierten Daten enthalten sind.
Das Folgende blendet die Spalte StartType für den Benutzer aus, bezieht sie aber in den Export ein.
Serverseitiger Export
Sie können die Exportfunktionalität mit einem PowerShell-Skriptblock steuern. Dies ist nützlich beim Exportieren aus serverseitigen Quellen wie SQL Server-Tabellen.
In diesem Beispiel habe ich eine SQL-Tabelle, die Podcasts enthält. Beim Exportieren erhalten Sie Informationen über den aktuellen Zustand der Tabelle, damit Sie anpassen können, welche Daten exportiert werden.
Exportoptionen anpassen
Sie können mit dem Cmdlet -ExportOption entscheiden, welche Exportoptionen Ihren Benutzern angeboten werden. Das folgende Beispiel würde nur die CSV-Exportoption anzeigen.
Bezeichnungen anpassen
Sie können den Parameter -TextOption zusammen mit dem Cmdlet New-UDTableTextOption verwenden, um Textfelder innerhalb der Tabelle festzulegen.
Aktualisieren mit einer Schaltfläche
Data-Parameter
Sie können eine Tabelle extern aktualisieren, indem Sie die Tabelle in einen dynamischen Bereich einfügen und Sync-UDElement verwenden.
Dieses Beispiel erstellt eine Schaltfläche zum Aktualisieren der Tabelle.
LoadData-Parameter
Wenn Sie den Parameter -LoadData verwenden, können Sie die Tabelle direkt synchronisieren. Dies hat den Vorteil, dass der Tabellenzustand, wie Seite und Filterung, nach der Aktualisierung beibehalten wird.
Aktualisierungsschaltfläche anzeigen
Sie können den Parameter -ShowRefresh verwenden, um eine Aktualisierungsschaltfläche für serverseitige Tabellen bereitzustellen.
Abwechselnde Zeilenfarben
Sie können ein Theme verwenden, um eine Tabelle mit abwechselnden Zeilenfarben zu erstellen.

Benutzerdefinierte Zeilenstile

Verwenden Sie den Parameter -OnRowStyle, um die Zeilen basierend auf dem Zeileninhalt zu stylen. Geben Sie eine Hashtable mit CSS-Stilen für die Zeile zurück.
API
Siehe auch
Zuletzt aktualisiert
War das hilfreich?