Freigeben über


Listenansicht (GroupBy)

In diesem Beispiel wird gezeigt, wie Sie eine Listenansicht implementieren, die die Zeilen der Liste in Gruppen trennt. In dieser Listenansicht werden die Eigenschaften des System.ServiceProcess.ServiceController Objekte angezeigt, die vom cmdlet Get-Service zurückgegeben werden. Weitere Informationen zu den Komponenten einer Listenansicht finden Sie unter Erstellen einer Listenansicht.

Diese Formatierungsdatei laden

  1. Kopieren Sie den XML-Code aus dem Abschnitt "Beispiel" dieses Themas in eine Textdatei.

  2. Speichern Sie die Textdatei. Fügen Sie der Datei unbedingt die format.ps1xml Erweiterung hinzu, um sie als Formatierungsdatei zu identifizieren.

  3. Öffnen Sie Windows PowerShell, und führen Sie den folgenden Befehl aus, um die Formatierungsdatei in die aktuelle Sitzung zu laden: Update-FormatData -PrependPath PathToFormattingFile.

Warnung

Diese Formatierungsdatei definiert die Anzeige eines Objekts, das bereits durch eine Windows PowerShell-Formatierungsdatei definiert ist. Sie müssen den parameter PrependPath verwenden, wenn Sie das Cmdlet ausführen, und Sie können diese Formatierungsdatei nicht als Modul laden.

Veranschaulichung

Diese Formatierungsdatei veranschaulicht die folgenden XML-Elemente:

  • Das Name Element für die Ansicht.

  • Das ViewSelectedBy-Element, das definiert, welche Objekte von der Ansicht angezeigt werden.

  • Das GroupBy-Element, das definiert, wie eine neue Gruppe von Objekten angezeigt wird.

  • Das ListControl-Element, das definiert, welche Eigenschaft von der Ansicht angezeigt wird.

  • Das ListItem Element, das definiert, was in einer Zeile der Listenansicht angezeigt wird.

  • Das PropertyName-Element, das definiert, welche Eigenschaft angezeigt wird.

Beispiel

Der folgende XML-Code definiert eine Listenansicht, die eine neue Gruppe startet, wenn sich der Wert des System.ServiceProcess.ServiceController.Status Eigenschaft ändert. Wenn jede Gruppe gestartet wird, wird eine benutzerdefinierte Bezeichnung angezeigt, die den neuen Wert der Eigenschaft enthält.

<Configuration>
  <ViewDefinitions>
    <View>
      <Name>System.ServiceProcess.ServiceController</Name>
      <ViewSelectedBy>
        <TypeName>System.ServiceProcess.ServiceController</TypeName>
      </ViewSelectedBy>
      <GroupBy>
        <PropertyName>Status</PropertyName>
        <Label>New Service Status</Label>
      </GroupBy>
      <ListControl>
        <ListEntries>
          <ListEntry>
            <ListItems>
              <ListItem>
                <PropertyName>Name</PropertyName>
              </ListItem>
              <ListItem>
                <PropertyName>DisplayName</PropertyName>
              </ListItem>
              <ListItem>
                <PropertyName>ServiceType</PropertyName>
              </ListItem>
            </ListItems>
          </ListEntry>
        </ListEntries>
      </ListControl>
    </View>
  </ViewDefinitions>
</Configuration>

Das folgende Beispiel zeigt, wie Windows PowerShell die System.ServiceProcess.ServiceController- Objekte anzeigt, nachdem diese Formatdatei geladen wurde. Die leeren Zeilen, die vor und nach der Gruppenbezeichnung hinzugefügt wurden, werden von Windows PowerShell automatisch hinzugefügt.

Get-Service f*
   New Service Status: Stopped

Name        : Fax
DisplayName : Fax
ServiceType : Win32OwnProcess

   New Service Status: Running

Name        : FCSAM
DisplayName : Microsoft Antimalware Service
ServiceType : Win32OwnProcess

   New Service Status: Stopped

Name        : fdPHost
DisplayName : Function Discovery Provider Host
ServiceType : Win32ShareProcess

   New Service Status: Running

Name        : FDResPub
DisplayName : Function Discovery Resource Publication
ServiceType : Win32ShareProcess

Name        : FontCache
DisplayName : Windows Font Cache Service
ServiceType : Win32ShareProcess

   New Service Status: Stopped

Name        : FontCache3.0.0.0
DisplayName : Windows Presentation Foundation Font Cache 3.0.0.0
ServiceType : Win32OwnProcess

   New Service Status: Running

Name        : FSysAgent
DisplayName : Microsoft Forefront System Agent
ServiceType : Win32OwnProcess

Name        : FwcAgent
DisplayName : Firewall Client Agent
ServiceType : Win32OwnProcess

Siehe auch

Beispiele für Formatierungsdateien

Schreiben einer PowerShell-Formatierungsdatei