Compartilhar via


Exibição de lista (GroupBy)

Este exemplo mostra como implementar uma exibição de lista que separa as linhas da lista em grupos. Esta exibição de lista exibe as propriedades dos objetos System.ServiceProcess.ServiceController retornados pelo cmdlet Get-Service. Para obter mais informações sobre os componentes de uma exibição de lista, consulte Criando uma exibição de lista.

Carregar este arquivo de formatação

  1. Copie o XML da seção Exemplo deste tópico em um arquivo de texto.

  2. Salve o arquivo de texto. Adicione a extensão format.ps1xml ao arquivo para identificá-la como um arquivo de formatação.

  3. Abra o Windows PowerShell e execute o seguinte comando para carregar o arquivo de formatação na sessão atual: Update-FormatData -PrependPath PathToFormattingFile.

Aviso

Esse arquivo de formatação define a exibição de um objeto que já está definido por um arquivo de formatação do Windows PowerShell. Você deve usar o parâmetro PrependPath ao executar o cmdlet e não pode carregar esse arquivo de formatação como um módulo.

Demonstra

Este arquivo de formatação demonstra os seguintes elementos XML:

  • O elemento Name para o modo de exibição.

  • O elemento ViewSelectedBy que define quais objetos são exibidos pela exibição.

  • O elemento GroupBy que define como um novo grupo de objetos é exibido.

  • O elemento ListControl que define qual propriedade é exibida pelo modo de exibição.

  • O elemento ListItem que define o que é exibido em uma linha do modo de exibição de lista.

  • O elemento PropertyName que define qual propriedade é exibida.

Exemplo

O XML a seguir define uma exibição de lista que inicia um novo grupo sempre que o valor da propriedade System.ServiceProcess.ServiceController.Status é alterado. Quando cada grupo é iniciado, um rótulo personalizado é exibido que inclui o novo valor da propriedade.

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

O exemplo a seguir mostra como o Windows PowerShell exibe os objetos System.ServiceProcess.ServiceController depois que esse arquivo de formato é carregado. As linhas em branco adicionadas antes e depois do rótulo de grupo são adicionadas automaticamente pelo 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

Consulte Também

exemplos de arquivos de formatação

Criando um arquivo de formatação do PowerShell