Creazione di una visualizzazione elencoCreating a List View

In una visualizzazione elenco i dati vengono visualizzati in una singola colonna (in ordine sequenziale).A list view displays data in a single column (in sequential order). I dati visualizzati nell'elenco possono corrispondere al valore di una proprietà .NET o al valore di uno script.The data displayed in the list can be the value of a .NET property or the value of a script.

Visualizzazione elencoA List View Display

L'output seguente mostra in che modo Windows PowerShell Visualizza le proprietà di System. ServiceProcess. ServiceController? DisplayProperty = oggetti FullName restituiti dal cmdlet Get-Service .The following output shows how Windows PowerShell displays the properties of System.Serviceprocess.Servicecontroller?Displayproperty=Fullname objects that are returned by the Get-Service cmdlet. In questo esempio sono stati restituiti tre oggetti, con ogni oggetto separato dall'oggetto precedente da una riga vuota.In this example, three objects were returned, with each object separated from the preceding object by a blank line.

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

Definizione della visualizzazione elencoDefining the List View

Il codice XML seguente mostra lo schema di visualizzazione elenco per visualizzare diverse proprietà di System. ServiceProcess. ServiceController? Oggetto DisplayProperty = FullName .The following XML shows the list view schema for displaying several properties of the System.Serviceprocess.Servicecontroller?Displayproperty=Fullname object. È necessario specificare ogni proprietà che si desidera visualizzare nella visualizzazione elenco.You must specify each property that you want displayed in the list view.

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

Per definire una visualizzazione elenco vengono utilizzati gli elementi XML seguenti:The following XML elements are used to define a list view:

  • L'elemento View è l'elemento padre della visualizzazione elenco.The View element is the parent element of the list view. Si tratta dello stesso elemento padre per la tabella, la larghezza e le visualizzazioni di controlli personalizzati.(This is the same parent element for the table, wide, and custom control views.)

  • L'elemento Name specifica il nome della vista.The Name element specifies the name of the view. Questo elemento è obbligatorio per tutte le visualizzazioni.This element is required for all views.

  • L'elemento ViewSelectedBy definisce gli oggetti che utilizzano la visualizzazione.The ViewSelectedBy element defines the objects that use the view. Questo elemento è obbligatorio.This element is required.

  • L'elemento GroupBy definisce quando viene visualizzato un nuovo gruppo di oggetti.The GroupBy element defines when a new group of objects is displayed. Un nuovo gruppo viene avviato ogni volta che viene modificato il valore di una proprietà o di uno script specifico.A new group is started whenever the value of a specific property or script changes. Questo elemento è facoltativo.This element is optional.

  • L'elemento Controls definisce i controlli personalizzati definiti dalla visualizzazione elenco.The Controls element defines the custom controls that are defined by the list view. I controlli consentono di specificare in modo più dettagliato la modalità di visualizzazione dei dati.Controls give you a way to further specify how the data is displayed. Questo elemento è facoltativo.This element is optional. Una vista può definire i propri controlli personalizzati oppure può utilizzare controlli comuni che possono essere utilizzati da qualsiasi visualizzazione nel file di formattazione.A view can define its own custom controls, or it can use common controls that can be used by any view in the formatting file. Per ulteriori informazioni sui controlli personalizzati, vedere creazione di controlli personalizzati.For more information about custom controls, see Creating Custom Controls.

  • L'elemento ListControl definisce gli elementi visualizzati nella visualizzazione e la relativa formattazione.The ListControl element defines what is displayed in the view and how it is formatted. Analogamente a tutte le altre viste, una visualizzazione elenco può visualizzare i valori delle proprietà dell'oggetto o i valori generati dallo script.Similar to all other views, a list view can display the values of object properties or values generated by script.

Per un esempio di un file di formattazione completo che definisce una semplice visualizzazione elenco, vedere visualizzazione elenco (di base).For an example of a complete formatting file that defines a simple list view, see List View (Basic).

Fornire definizioni per la visualizzazione elencoProviding Definitions for Your List View

Le visualizzazioni elenco possono fornire una o più definizioni usando gli elementi figlio dell'elemento ListControl .List views can provide one or more definitions by using the child elements of the ListControl element. In genere, una vista avrà una sola definizione.Typically, a view will have only one definition. Nell'esempio seguente, la vista fornisce una singola definizione che visualizza diverse proprietà di System. Diagnostics. Process? Oggetto DisplayProperty = FullName .In the following example, the view provides a single definition that displays several properties of the System.Diagnostics.Process?Displayproperty=Fullname object. In una visualizzazione elenco è possibile visualizzare il valore di una proprietà o il valore di uno script (non illustrato nell'esempio).A list view can display the value of a property or the value of a script (not shown in the example).

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

È possibile utilizzare gli elementi XML seguenti per fornire definizioni per una visualizzazione elenco:The following XML elements can be used to provide definitions for a list view:

  • L'elemento ListControl e i relativi elementi figlio definiscono ciò che viene visualizzato nella visualizzazione.The ListControl element and its child elements define what is displayed in the view.

  • L'elemento ListEntries fornisce le definizioni della vista.The ListEntries element provides the definitions of the view. Nella maggior parte dei casi, una vista avrà una sola definizione.In most cases, a view will have only one definition. Questo elemento è obbligatorio.This element is required.

  • L'elemento ListEntry fornisce una definizione della vista.The ListEntry element provides a definition of the view. È necessario almeno un ListEntry . Tuttavia, non esiste alcun limite massimo per il numero di elementi che è possibile aggiungere.At least one ListEntry is required; however, there is no maximum limit to the number of elements that you can add. Nella maggior parte dei casi, una vista avrà una sola definizione.In most cases, a view will have only one definition.

  • L'elemento EntrySelectedBy specifica gli oggetti visualizzati da una definizione specifica.The EntrySelectedBy element specifies the objects that are displayed by a specific definition. Questo elemento è facoltativo ed è necessario solo quando si definiscono più elementi ListEntry che visualizzano oggetti diversi.This element is optional and is needed only when you define multiple ListEntry elements that display different objects.

  • L'elemento ListItems specifica le proprietà e gli script i cui valori vengono visualizzati nelle righe della visualizzazione elenco.The ListItems element specifies the properties and scripts whose values are displayed in the rows of the list view.

  • L'elemento ListItem specifica una proprietà o uno script il cui valore viene visualizzato in una riga della visualizzazione elenco.The ListItem element specifies a property or script whose value is displayed in a row of the list view. Una visualizzazione elenco deve specificare almeno una proprietà o uno script.A list view must specify at least one property or script. Non esiste un limite massimo per il numero di righe che è possibile specificare.There is no maximum limit to the number of rows that can be specified.

  • L'elemento PropertyName specifica la proprietà il cui valore viene visualizzato nella riga.The PropertyName element specifies the property whose value is displayed in the row. È necessario specificare una proprietà o uno script, ma non è possibile specificarli entrambi.You must specify either a property or a script, but you cannot specify both.

  • L'elemento scriptblock specifica lo script il cui valore viene visualizzato nella riga.The ScriptBlock element specifies the script whose value is displayed in the row. È necessario specificare uno script o una proprietà, ma non è possibile specificarli entrambi.You must specify either a script or a property, but you cannot specify both.

  • L'elemento Label specifica l'etichetta visualizzata a sinistra della proprietà o del valore dello script nella riga.The Label element specifies the label that is displayed to the left of the property or script value in the row. Questo elemento è facoltativo.This element is optional. Se non si specifica un'etichetta, viene visualizzato il nome della proprietà o dello script.If a label is not specified, the name of the property or the script is displayed. Per un esempio completo, vedere visualizzazione elenco (etichette).For a complete example, see List View (Labels).

  • L'elemento ItemSelectionCondition specifica una condizione che deve esistere per la visualizzazione della riga.The ItemSelectionCondition element specifies a condition that must exist for the row to be displayed. Per ulteriori informazioni sull'aggiunta di condizioni alla visualizzazione elenco, vedere definizione delle condizioni per la visualizzazione dei dati.For more information about adding conditions to the list view, see Defining Conditions for Displaying Data. Questo elemento è facoltativo.This element is optional.

  • L'elemento FormatString specifica un modello utilizzato per visualizzare il valore della proprietà o dello script.The FormatString element specifies a pattern that is used to display the value of the property or script. Questo elemento è facoltativo.This element is optional.

Per un esempio di un file di formattazione completo che definisce una semplice visualizzazione elenco, vedere visualizzazione elenco (di base).For an example of a complete formatting file that defines a simple list view, see List View (Basic).

Definizione degli oggetti che utilizzano la visualizzazione elencoDefining the Objects That Use the List View

Esistono due modi per definire gli oggetti .NET che utilizzano la visualizzazione elenco.There are two ways to define which .NET objects use the list view. È possibile utilizzare l'elemento ViewSelectedBy per definire gli oggetti che possono essere visualizzati da tutte le definizioni della vista oppure è possibile utilizzare l'elemento EntrySelectedBy per definire quali oggetti vengono visualizzati da una definizione specifica della vista.You can use the ViewSelectedBy element to define the objects that can be displayed by all the definitions of the view, or you can use the EntrySelectedBy element to define which objects are displayed by a specific definition of the view. Nella maggior parte dei casi, una vista ha una sola definizione, quindi gli oggetti vengono in genere definiti dall'elemento ViewSelectedBy .In most cases, a view has only one definition, so objects are typically defined by the ViewSelectedBy element.

Nell'esempio seguente viene illustrato come definire gli oggetti visualizzati dalla visualizzazione elenco usando gli elementi ViewSelectedBy e typeName .The following example shows how to define the objects that are displayed by the list view using the ViewSelectedBy and TypeName elements. Non esiste alcun limite al numero di elementi typeName che è possibile specificare e il loro ordine non è significativo.There is no limit to the number of TypeName elements that you can specify, and their order is not significant.

<View>
  <Name>System.ServiceProcess.ServiceController</Name>
  <ViewSelectedBy>
    <TypeName>System.Diagnostics.Process</TypeName>
  </ViewSelectedBy>
  <ListControl>...</ListControl>
</View>

Per specificare gli oggetti utilizzati dalla visualizzazione elenco, è possibile utilizzare gli elementi XML seguenti:The following XML elements can be used to specify the objects that are used by the list view:

  • L'elemento ViewSelectedBy definisce quali oggetti vengono visualizzati dalla visualizzazione elenco.The ViewSelectedBy element defines which objects are displayed by the list view.

  • L'elemento typeName specifica l'oggetto .NET visualizzato dalla visualizzazione.The TypeName element specifies the .NET object that is displayed by the view. Il nome completo del tipo .NET è obbligatorio.The fully qualified .NET type name is required. È necessario specificare almeno un tipo o un set di selezione per la vista, ma non esiste un numero massimo di elementi che è possibile specificare.You must specify at least one type or selection set for the view, but there is no maximum number of elements that can be specified.

Per un esempio di un file di formattazione completo, vedere visualizzazione elenco (di base).For an example of a complete formatting file, see List View (Basic).

Nell'esempio seguente vengono usati gli elementi ViewSelectedBy e SelectionSetName .The following example uses the ViewSelectedBy and SelectionSetName elements. Utilizzare i set di selezione in cui è presente un set correlato di oggetti visualizzati utilizzando più visualizzazioni, ad esempio quando si definiscono una visualizzazione elenco e una vista tabella per gli stessi oggetti.Use selection sets where you have a related set of objects that are displayed using multiple views, such as when you define a list view and a table view for the same objects. Per ulteriori informazioni su come creare un set di selezione, vedere definizionedi set di selezione.For more information about how to create a selection set, see Defining Selection Sets.

<View>
  <Name>System.ServiceProcess.ServiceController</Name>
  <ViewSelectedBy>
    <SelectionSetName>.NET Type Set</SelectionSetName>
  </ViewSelectedBy>
  <ListControl>...</ListControl>
</View>

Per specificare gli oggetti utilizzati dalla visualizzazione elenco, è possibile utilizzare gli elementi XML seguenti:The following XML elements can be used to specify the objects that are used by the list view:

  • L'elemento ViewSelectedBy definisce quali oggetti vengono visualizzati dalla visualizzazione elenco.The ViewSelectedBy element defines which objects are displayed by the list view.

  • L'elemento SelectionSetName specifica un set di oggetti che possono essere visualizzati dalla visualizzazione.The SelectionSetName element specifies a set of objects that can be displayed by the view. È necessario specificare almeno un set di selezione o un tipo per la vista, ma non esiste un numero massimo di elementi che è possibile specificare.You must specify at least one selection set or type for the view, but there is no maximum number of elements that can be specified.

Nell'esempio seguente viene illustrato come definire gli oggetti visualizzati da una definizione specifica della visualizzazione elenco utilizzando l'elemento EntrySelectedBy .The following example shows how to define the objects displayed by a specific definition of the list view using the EntrySelectedBy element. Utilizzando questo elemento, è possibile specificare il nome del tipo .NET dell'oggetto, un set di selezione di oggetti o una condizione di selezione che specifica quando viene utilizzata la definizione.Using this element, you can specify the .NET type name of the object, a selection set of objects, or a selection condition that specifies when the definition is used. Per ulteriori informazioni sulla creazione di condizioni di selezione, vedere definizione di condizioni per la visualizzazione dei dati.For more information about how to create a selection conditions, see Defining Conditions for Displaying Data.

<ListEntry>
  <EntrySelectedBy>
    <TypeName>.NET Type</TypeName>
  </EntrySelectedBy>
</ListEntry>

Gli elementi XML seguenti possono essere utilizzati per specificare gli oggetti utilizzati da una definizione specifica della visualizzazione elenco:The following XML elements can be used to specify the objects that are used by a specific definition of the list view:

  • L'elemento EntrySelectedBy definisce quali oggetti vengono visualizzati dalla definizione.The EntrySelectedBy element defines which objects are displayed by the definition.

  • L'elemento typeName specifica l'oggetto .NET visualizzato dalla definizione.The TypeName element specifies the .NET object that is displayed by the definition. Quando si usa questo elemento, il nome completo del tipo .NET è obbligatorio.When using this element, the fully qualified .NET type name is required. È necessario specificare almeno un tipo, un set di selezione o una condizione di selezione per la definizione, ma non esiste un numero massimo di elementi che è possibile specificare.You must specify at least one type, selection set, or selection condition for the definition, but there is no maximum number of elements that can be specified.

  • L'elemento SelectionSetName (non mostrato) specifica un set di oggetti che possono essere visualizzati da questa definizione.The SelectionSetName element (not shown) specifies a set of objects that can be displayed by this definition. È necessario specificare almeno un tipo, un set di selezione o una condizione di selezione per la definizione, ma non esiste un numero massimo di elementi che è possibile specificare.You must specify at least one type, selection set, or selection condition for the definition, but there is no maximum number of elements that can be specified.

  • L'elemento SelectionCondition (non mostrato) specifica una condizione che deve esistere affinché questa definizione venga utilizzata.The SelectionCondition element (not shown) specifies a condition that must exist for this definition to be used. È necessario specificare almeno un tipo, un set di selezione o una condizione di selezione per la definizione, ma non esiste un numero massimo di elementi che è possibile specificare.You must specify at least one type, selection set, or selection condition for the definition, but there is no maximum number of elements that can be specified. Per ulteriori informazioni sulla definizione delle condizioni di selezione, vedere definizione delle condizioni per la visualizzazione dei dati.For more information about defining selection conditions, see Defining Conditions for Displaying Data.

Visualizzazione di gruppi di oggetti in una visualizzazione elencoDisplaying Groups of Objects in a List View

È possibile separare gli oggetti visualizzati dalla visualizzazione elenco in gruppi.You can separate the objects that are displayed by the list view into groups. Ciò non significa che si definisce un gruppo, solo che Windows PowerShell avvia un nuovo gruppo ogni volta che viene modificato il valore di una proprietà o di uno script specifico.This does not mean that you define a group, only that Windows PowerShell starts a new group whenever the value of a specific property or script changes. Nell'esempio seguente viene avviato un nuovo gruppo ogni volta che viene modificato il valore della proprietà System. ServiceProcess. ServiceController. ServiceType .In the following example, a new group is started whenever the value of the System.Serviceprocess.Servicecontroller.Servicetype property changes.

<GroupBy>
  <Label>Service Type</Label>
  <PropertyName>ServiceType</PropertyName>
</GroupBy>

Per definire quando viene avviato un gruppo, vengono utilizzati gli elementi XML seguenti:The following XML elements are used to define when a group is started:

  • L'elemento GroupBy definisce la proprietà o lo script che avvia il nuovo gruppo e definisce la modalità di visualizzazione del gruppo.The GroupBy element defines the property or script that starts the new group and defines how the group is displayed.

  • L'elemento PropertyName specifica la proprietà che avvia un nuovo gruppo ogni volta che viene modificato il valore.The PropertyName element specifies the property that starts a new group whenever its value changes. È necessario specificare una proprietà o uno script per avviare il gruppo, ma non è possibile specificarli entrambi.You must specify a property or script to start the group, but you cannot specify both.

  • L'elemento scriptblock specifica lo script che avvia un nuovo gruppo ogni volta che viene modificato il valore.The ScriptBlock element specifies the script that starts a new group whenever its value changes. Per avviare il gruppo, è necessario specificare uno script o una proprietà, ma non è possibile specificarli entrambi.You must specify a script or property to start the group, but you cannot specify both.

  • L'elemento Label definisce un'etichetta che viene visualizzata all'inizio di ogni gruppo.The Label element defines a label that is displayed at the beginning of each group. Oltre al testo specificato da questo elemento, Windows PowerShell Visualizza il valore che ha attivato il nuovo gruppo e aggiunge una riga vuota prima e dopo l'etichetta.In addition to the text specified by this element, Windows PowerShell displays the value that triggered the new group and adds a blank line before and after the label. Questo elemento è facoltativo.This element is optional.

  • L'elemento CustomControl definisce un controllo usato per visualizzare i dati.The CustomControl element defines a control that is used to display the data. Questo elemento è facoltativo.This element is optional.

  • L'elemento CustomControlName specifica un controllo comune o di visualizzazione usato per visualizzare i dati.The CustomControlName element specifies a common or view control that is used to display the data. Questo elemento è facoltativo.This element is optional.

Per un esempio di un file di formattazione completo che definisce i gruppi, vedere visualizzazione elenco (GroupBy).For an example of a complete formatting file that defines groups, see List View (GroupBy).

Uso di stringhe di formatoUsing Format Strings

È possibile aggiungere stringhe di formattazione a una visualizzazione per definire ulteriormente la modalità di visualizzazione dei dati.Formatting strings can be added to a view to further define how the data is displayed. Nell'esempio seguente viene illustrato come definire una stringa di formattazione per il valore della StartTime Proprietà.The following example shows how to define a formatting string for the value of the StartTime property.

<ListItem>
  <PropertyName>StartTime</PropertyName>
  <FormatString>{0:MMM} (0:DD) (0:HH):(0:MM)</FormatString>
</ListItem>

Per specificare un modello di formato, è possibile utilizzare gli elementi XML seguenti:The following XML elements can be used to specify a format pattern:

  • L'elemento ListItem specifica i dati visualizzati dalla visualizzazione.The ListItem element specifies the data that is displayed by the view.

  • L'elemento PropertyName specifica la proprietà il cui valore viene visualizzato dalla visualizzazione.The PropertyName element specifies the property whose value is displayed by the view. È necessario specificare una proprietà o uno script, ma non è possibile specificarli entrambi.You must specify either a property or a script, but you cannot specify both.

  • L'elemento FormatString specifica un modello di formato che definisce come viene visualizzato il valore della proprietà o dello script nella visualizzazione.The FormatString element specifies a format pattern that defines how the property or script value is displayed in the view.

  • L'elemento scriptblock (non mostrato) specifica lo script il cui valore viene visualizzato dalla visualizzazione.The ScriptBlock element (not shown) specifies the script whose value is displayed by the view. È necessario specificare uno script o una proprietà, ma non è possibile specificarli entrambi.You must specify either a script or a property, but you cannot specify both.

Nell'esempio seguente ToString viene chiamato il metodo per formattare il valore dello script.In the following example, the ToString method is called to format the value of the script. Gli script possono chiamare qualsiasi metodo di un oggetto.Scripts can call any method of an object. Pertanto, se un oggetto dispone di un metodo, ad esempio ToString , con parametri di formattazione, lo script può chiamare tale metodo per formattare il valore di output dello script.Therefore, if an object has a method, such as ToString, that has formatting parameters, the script can call that method to format the output value of the script.

<ListItem>
  <ScriptBlock>
    [String}::Format("(0,10) (1,8)", .LastWriteTime.ToString("d"),
    $_.LastWriteTime.Totring("t"))
  </ScriptBlock>
</ListItem>

Per chiamare il metodo, è possibile utilizzare l'elemento XML seguente ToString :The following XML element can be used to calling the ToString method:

  • L'elemento ListItem specifica i dati visualizzati dalla visualizzazione.The ListItem element specifies the data that is displayed by the view.

  • L'elemento scriptblock (non mostrato) specifica lo script il cui valore viene visualizzato dalla visualizzazione.The ScriptBlock element (not shown) specifies the script whose value is displayed by the view. È necessario specificare uno script o una proprietà, ma non è possibile specificarli entrambi.You must specify either a script or a property, but you cannot specify both.

Vedere ancheSee Also

Scrittura di un cmdlet di Windows PowerShellWriting a Windows PowerShell Cmdlet