Partager via


Vue de liste (GroupBy)

Cet exemple montre comment implémenter un affichage de liste qui sépare les lignes de la liste en groupes. Cet affichage de liste affiche les propriétés des objets System.ServiceProcess.ServiceController retournés par l’applet de commande Get-Service . Pour plus d’informations sur les composants d’un affichage de liste, consultez Création d’un affichage liste.

Charger ce fichier de mise en forme

  1. Copiez le code XML de la section Exemple de cette rubrique dans un fichier texte.

  2. Enregistrez le fichier texte. Veillez à ajouter l’extension format.ps1xml au fichier pour l’identifier en tant que fichier de mise en forme.

  3. Ouvrez Windows PowerShell et exécutez la commande suivante pour charger le fichier de mise en forme dans la session active : Update-FormatData -PrependPath PathToFormattingFile.

Avertissement

Ce fichier de mise en forme définit l’affichage d’un objet déjà défini par un fichier de mise en forme Windows PowerShell. Vous devez utiliser le paramètre PrependPath lorsque vous exécutez l’applet de commande et que vous ne pouvez pas charger ce fichier de mise en forme en tant que module.

Montre ce qui suit

Ce fichier de mise en forme illustre les éléments XML suivants :

  • Élément Name de la vue.

  • L’élément ViewSelectedBy qui définit les objets affichés par la vue.

  • Élément GroupBy qui définit la façon dont un nouveau groupe d’objets est affiché.

  • Élément ListControl qui définit la propriété affichée par la vue.

  • L’élément ListItem qui définit ce qui est affiché dans une ligne de l’affichage de liste.

  • Élément PropertyName qui définit la propriété affichée.

Exemple :

Le code XML suivant définit un affichage de liste qui démarre un nouveau groupe chaque fois que la valeur de la propriété System.ServiceProcess.ServiceController.Status change. Lorsque chaque groupe est démarré, une étiquette personnalisée s’affiche qui inclut la nouvelle valeur de la propriété.

<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>

L’exemple suivant montre comment Windows PowerShell affiche les objets System.ServiceProcess.ServiceController une fois ce fichier de format chargé. Les lignes vides ajoutées avant et après l’étiquette de groupe sont automatiquement ajoutées par Windows PowerShell.

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

Voir aussi

exemples de mise en forme des fichiers

Écrire un fichier de mise en forme PowerShell