Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Um modo de exibição de lista exibe dados em uma única coluna (em ordem sequencial). Os dados exibidos na lista podem ser o valor de uma propriedade .NET ou o valor de um script.
Exibição de um modo de exibição de lista
A saída a seguir mostra como o Windows PowerShell exibe as propriedades de objetos System.ServiceProcess.ServiceController retornados pelo cmdlet Get-Service . Neste exemplo, três objetos foram retornados, com cada objeto separado do objeto anterior por uma linha em branco.
Get-Service | Format-List
Name : AEADIFilters
DisplayName : Andrea ADI Filters Service
Status : Running
DependentServices : {}
ServicesDependedOn : {}
CanPauseAndContinue : False
CanShutdown : False
CanStop : True
ServiceType : Win32OwnProcess
Name : AeLookupSvc
DisplayName : Application Experience
Status : Running
DependentServices : {}
ServicesDependedOn : {}
CanPauseAndContinue : False
CanShutdown : False
CanStop : True
ServiceType : Win32ShareProcess
Name : AgereModemAudio
DisplayName : Agere Modem Call Progress Audio
Status : Running
DependentServices : {}
ServicesDependedOn : {}
CanPauseAndContinue : False
CanShutdown : False
CanStop : True
ServiceType : Win32OwnProcess
...
Definindo o modo de exibição de lista
O XML a seguir mostra o esquema de exibição de lista para exibir várias propriedades do objeto System.ServiceProcess.ServiceController. Você deve especificar cada propriedade que deseja exibir no modo de exibição de lista.
<View>
<Name>System.ServiceProcess.ServiceController</Name>
<ViewSelectedBy>
<TypeName>System.ServiceProcess.ServiceController</TypeName>
</ViewSelectedBy>
<ListControl>
<ListEntries>
<ListEntry>
<ListItems>
<ListItem>
<PropertyName>Name</PropertyName>
</ListItem>
<ListItem>
<PropertyName>DisplayName</PropertyName>
</ListItem>
<ListItem>
<PropertyName>Status</PropertyName>
</ListItem>
<ListItem>
<PropertyName>ServiceType</PropertyName>
</ListItem>
</ListItems>
</ListEntry>
</ListEntries>
</ListControl>
</View>
Os seguintes elementos XML são usados para definir uma exibição de lista:
O elemento View é o elemento pai do modo de exibição de lista. (Este é o mesmo elemento pai para as exibições de controle de tabela, ampla e personalizada.)
O elemento Name especifica o nome do modo de exibição. Este elemento é necessário para todas as vistas.
O elemento ViewSelectedBy define os objetos que usam o modo de exibição. Este elemento é obrigatório.
O elemento GroupBy define quando um novo grupo de objetos é exibido. Um novo grupo é iniciado sempre que o valor de uma propriedade ou script específico é alterado. Este elemento é opcional.
O elemento Controls define os controles personalizados que são definidos pelo modo de exibição de lista. Os controles oferecem uma maneira de especificar melhor como os dados são exibidos. Este elemento é opcional. Um modo de exibição pode definir seus próprios controles personalizados ou pode usar controles comuns que podem ser usados por qualquer modo de exibição no arquivo de formatação. Para obter mais informações sobre controles personalizados, consulte Criando controles personalizados.
O elemento ListControl define o que é exibido no modo de exibição e como ele é formatado. Semelhante a todos os outros modos de exibição, um modo de exibição de lista pode exibir os valores de propriedades de objeto ou valores gerados por script.
Para obter um exemplo de um ficheiro de formatação completo que define uma vista de lista simples, consulte Vista de Lista (Básica).
Fornecendo definições para sua exibição de lista
Os modos de exibição de lista podem fornecer uma ou mais definições usando os elementos filho do ListControl elemento. Normalmente, um modo de exibição terá apenas uma definição. No exemplo a seguir, o modo de exibição fornece uma única definição que exibe várias propriedades do objeto System.Diagnostics.Process. Um modo de exibição de lista pode exibir o valor de uma propriedade ou o valor de um script (não mostrado no exemplo).
<ListControl>
<ListEntries>
<ListEntry>
<ListItems>
<ListItem>
<PropertyName>Name</PropertyName>
</ListItem>
<ListItem>
<PropertyName>DisplayName</PropertyName>
</ListItem>
<ListItem>
<PropertyName>Status</PropertyName>
</ListItem>
<ListItem>
<PropertyName>ServiceType</PropertyName>
</ListItem>
</ListItems>
</ListEntry>
</ListEntries>
</ListControl>
Os seguintes elementos XML podem ser usados para fornecer definições para uma exibição de lista:
O elemento ListControl e seus elementos filho definem o que é exibido no modo de exibição.
O elemento ListEntries fornece as definições do modo de exibição. Na maioria dos casos, uma vista terá apenas uma definição. Este elemento é obrigatório.
O elemento ListEntry fornece uma definição do modo de exibição. Pelo menos um ListEntry é necessário; no entanto, não há limite máximo para o número de elementos que você pode adicionar. Na maioria dos casos, uma vista terá apenas uma definição.
O elemento EntrySelectedBy especifica os objetos que são exibidos por uma definição específica. Esse elemento é opcional e é necessário somente quando você define vários elementos ListEntry que exibem objetos diferentes.
O elemento ListItems especifica as propriedades e scripts cujos valores são exibidos nas linhas do modo de exibição de lista.
O elemento ListItem especifica uma propriedade ou script cujo valor é exibido em uma linha do modo de exibição de lista. Um modo de exibição de lista deve especificar pelo menos uma propriedade ou script. Não há limite máximo para o número de linhas que podem ser especificadas.
O elemento PropertyName especifica a propriedade cujo valor é exibido na linha. Você deve especificar uma propriedade ou um script, mas não pode especificar ambos.
O elemento ScriptBlock especifica o script cujo valor é exibido na linha. Você deve especificar um script ou uma propriedade, mas não pode especificar ambos.
O elemento Label especifica o rótulo exibido à esquerda da propriedade ou do valor do script na linha. Este elemento é opcional. Se um rótulo não for especificado, o nome da propriedade ou do script será exibido. Para obter um exemplo completo, consulte Modo de Exibição de Lista (Rótulos).
O elemento ItemSelectionCondition especifica uma condição que deve existir para que a linha seja exibida. Para obter mais informações sobre como adicionar condições ao modo de exibição de lista, consulte Definindo condições para exibição de dados. Este elemento é opcional.
O elemento FormatString especifica um padrão que é usado para exibir o valor da propriedade ou script. Este elemento é opcional.
Para obter um exemplo de um ficheiro de formatação completo que define uma vista de lista simples, consulte Vista de Lista (Básica).
Definindo os objetos que usam o modo de exibição de lista
Há duas maneiras de definir quais objetos .NET usam o modo de exibição de lista. Você pode usar o elemento ViewSelectedBy para definir os objetos que podem ser exibidos por todas as definições do modo de exibição ou pode usar o elemento EntrySelectedBy para definir quais objetos são exibidos por uma definição específica do modo de exibição. Na maioria dos casos, um modo de exibição tem apenas uma definição, portanto, os objetos geralmente são definidos pelo elemento ViewSelectedBy.
O exemplo a seguir mostra como definir os objetos que são exibidos pelo modo de exibição de lista usando os elementos ViewSelectedBy e TypeName. Não há limite para o número de TypeName elementos que você pode especificar, e sua ordem não é significativa.
<View>
<Name>System.ServiceProcess.ServiceController</Name>
<ViewSelectedBy>
<TypeName>System.Diagnostics.Process</TypeName>
</ViewSelectedBy>
<ListControl>...</ListControl>
</View>
Os seguintes elementos XML podem ser usados para especificar os objetos que são usados pelo modo de exibição de lista:
O elemento ViewSelectedBy define quais objetos são exibidos pelo modo de exibição de lista.
O elemento TypeName especifica o objeto .NET que é exibido pelo modo de exibição. O nome de tipo .NET totalmente qualificado é necessário. Você deve especificar pelo menos um tipo ou conjunto de seleção para a exibição, mas não há um número máximo de elementos que podem ser especificados.
Para obter um exemplo de um ficheiro de formatação completo, consulte Vista de Lista (Básica).
O exemplo a seguir usa os elementos ViewSelectedBy e SelectionSetName. Use conjuntos de seleção onde você tem um conjunto relacionado de objetos que são exibidos usando vários modos de exibição, como quando você define um modo de exibição de lista e um modo de exibição de tabela para os mesmos objetos. Para obter mais informações sobre como criar um conjunto de seleção, consulte Definindo conjuntos de seleção.
<View>
<Name>System.ServiceProcess.ServiceController</Name>
<ViewSelectedBy>
<SelectionSetName>.NET Type Set</SelectionSetName>
</ViewSelectedBy>
<ListControl>...</ListControl>
</View>
Os seguintes elementos XML podem ser usados para especificar os objetos que são usados pelo modo de exibição de lista:
O elemento ViewSelectedBy define quais objetos são exibidos pelo modo de exibição de lista.
O elemento SelectionSetName especifica um conjunto de objetos que podem ser exibidos pelo modo de exibição. Você deve especificar pelo menos um conjunto de seleção ou tipo para o modo de exibição, mas não há um número máximo de elementos que podem ser especificados.
O exemplo a seguir mostra como definir os objetos exibidos por uma definição específica do modo de exibição de lista usando o EntrySelectedBy elemento. Usando esse elemento, você pode especificar o nome do tipo .NET do objeto, um conjunto de seleção de objetos ou uma condição de seleção que especifica quando a definição é usada. Para obter mais informações sobre como criar condições de seleção, consulte Definindo condições para exibição de dados.
<ListEntry>
<EntrySelectedBy>
<TypeName>.NET Type</TypeName>
</EntrySelectedBy>
</ListEntry>
Os seguintes elementos XML podem ser usados para especificar os objetos que são usados por uma definição específica do modo de exibição de lista:
O elemento EntrySelectedBy define quais objetos são exibidos pela definição.
O elemento TypeName especifica o objeto .NET que é exibido pela definição. Ao usar esse elemento, o nome de tipo .NET totalmente qualificado é necessário. Você deve especificar pelo menos um tipo, conjunto de seleção ou condição de seleção para a definição, mas não há um número máximo de elementos que podem ser especificados.
O elemento SelectionSetName (não mostrado) especifica um conjunto de objetos que podem ser exibidos por essa definição. Você deve especificar pelo menos um tipo, conjunto de seleção ou condição de seleção para a definição, mas não há um número máximo de elementos que podem ser especificados.
O elemento SelectionCondition (não mostrado) especifica uma condição que deve existir para que essa definição seja usada. Você deve especificar pelo menos um tipo, conjunto de seleção ou condição de seleção para a definição, mas não há um número máximo de elementos que podem ser especificados. Para obter mais informações sobre como definir condições de seleção, consulte Definindo condições para exibição de dados.
Exibindo grupos de objetos em um modo de exibição de lista
Você pode separar os objetos exibidos pelo modo de exibição de lista em grupos. Isso não significa que você define um grupo, apenas que o Windows PowerShell inicia um novo grupo sempre que o valor de uma propriedade ou script específico é alterado. No exemplo a seguir, um novo grupo é iniciado sempre que o valor da propriedade System.ServiceProcess.ServiceController.ServiceType é alterado.
<GroupBy>
<Label>Service Type</Label>
<PropertyName>ServiceType</PropertyName>
</GroupBy>
Os seguintes elementos XML são usados para definir quando um grupo é iniciado:
O elemento GroupBy define a propriedade ou o script que inicia o novo grupo e define como o grupo é exibido.
O elemento PropertyName especifica a propriedade que inicia um novo grupo sempre que seu valor é alterado. Você deve especificar uma propriedade ou script para iniciar o grupo, mas não pode especificar ambos.
O elemento ScriptBlock especifica o script que inicia um novo grupo sempre que seu valor é alterado. Você deve especificar um script ou propriedade para iniciar o grupo, mas não pode especificar ambos.
O elemento Label define um rótulo que é exibido no início de cada grupo. Além do texto especificado por esse elemento, o Windows PowerShell exibe o valor que acionou o novo grupo e adiciona uma linha em branco antes e depois do rótulo. Este elemento é opcional.
O elemento CustomControl define um controle que é usado para exibir os dados. Este elemento é opcional.
O elemento CustomControlName especifica um controle comum ou de exibição que é usado para exibir os dados. Este elemento é opcional.
Para obter um exemplo de um arquivo de formatação completo que define grupos, consulte Modo de Exibição de Lista (GroupBy).
Usando cadeias de caracteres de formato
As cadeias de caracteres de formatação podem ser adicionadas a uma exibição para definir melhor como os dados são exibidos. O exemplo a seguir mostra como definir uma cadeia de caracteres de formatação para o valor da propriedade StartTime.
<ListItem>
<PropertyName>StartTime</PropertyName>
<FormatString>{0:MMM} {0:DD} {0:HH}:{0:MM}</FormatString>
</ListItem>
Os seguintes elementos XML podem ser usados para especificar um padrão de formato:
O elemento ListItem especifica os dados exibidos pelo modo de exibição.
O elemento PropertyName especifica a propriedade cujo valor é exibido pelo modo de exibição. Você deve especificar uma propriedade ou um script, mas não pode especificar ambos.
O elemento FormatString especifica um padrão de formato que define como a propriedade ou o valor do script é exibido no modo de exibição.
O elemento ScriptBlock (não mostrado) especifica o script cujo valor é exibido pelo modo de exibição. Você deve especificar um script ou uma propriedade, mas não pode especificar ambos.
No exemplo a seguir, o método ToString é chamado para formatar o valor do script. Os scripts podem chamar qualquer método de um objeto. Portanto, se um objeto tiver um método, como ToString, que tenha parâmetros de formatação, o script poderá chamar esse método para formatar o valor de saída do script.
<ListItem>
<ScriptBlock>
[string]::Format("{0,-10} {1,-8}", $_.LastWriteTime.ToString("d"), $_.LastWriteTime.ToString("t"))
</ScriptBlock>
</ListItem>
O seguinte elemento XML pode ser usado para chamar o método ToString:
O elemento ListItem especifica os dados exibidos pelo modo de exibição.
O elemento ScriptBlock (não mostrado) especifica o script cujo valor é exibido pelo modo de exibição. Você deve especificar um script ou uma propriedade, mas não pode especificar ambos.