Panoramica dei file di formattazioneFormatting File Overview

Il formato di visualizzazione per gli oggetti restituiti dai comandi (cmdlet, funzioni e script) viene definito utilizzando i file di formattazione (format.ps1file XML).The display format for the objects that are returned by commands (cmdlets, functions, and scripts) are defined by using formatting files (format.ps1xml files). Molti di questi file sono forniti da PowerShell per definire il formato di visualizzazione per gli oggetti restituiti dai comandi forniti da PowerShell, ad esempio l'oggetto System. Diagnostics. Process restituito dal Get-Process cmdlet.Several of these files are provided by PowerShell to define the display format for those objects returned by PowerShell-provided commands, such as the System.Diagnostics.Process object returned by the Get-Process cmdlet. Tuttavia, è anche possibile creare file di formattazione personalizzati per sovrascrivere i formati di visualizzazione predefiniti oppure è possibile scrivere un file di formattazione personalizzato per definire la visualizzazione degli oggetti restituiti dai propri comandi.However, you can also create your own custom formatting files to overwrite the default display formats or you can write a custom formatting file to define the display of objects returned by your own commands.

Importante

I file di formattazione non determinano gli elementi di un oggetto restituiti alla pipeline.Formatting files do not determine the elements of an object that are returned to the pipeline. Quando un oggetto viene restituito alla pipeline, tutti i membri di tale oggetto sono disponibili anche se alcuni non sono visualizzati.When an object is returned to the pipeline, all members of that object are available even if some are not displayed.

PowerShell usa i dati nei file di formattazione per determinare gli elementi visualizzati e il modo in cui vengono formattati i dati visualizzati.PowerShell uses the data in these formatting files to determine what is displayed and how the displayed data is formatted. I dati visualizzati possono includere le proprietà di un oggetto o il valore di uno script.The displayed data can include the properties of an object or the value of a script. Gli script vengono utilizzati se si desidera visualizzare un valore non disponibile direttamente dalle proprietà di un oggetto, ad esempio l'aggiunta del valore di due proprietà di un oggetto e la visualizzazione della somma come una porzione di dati.Scripts are used if you want to display some value that is not available directly from the properties of an object, such as adding the value of two properties of an object and then displaying the sum as a piece of data. La formattazione dei dati visualizzati viene eseguita definendo le visualizzazioni per gli oggetti che si desidera visualizzare.Formatting of the displayed data is done by defining views for the objects that you want to display. È possibile definire una singola visualizzazione per ogni oggetto, è possibile definire una singola visualizzazione per più oggetti oppure è possibile definire più visualizzazioni per lo stesso oggetto.You can define a single view for each object, you can define a single view for multiple objects, or you can define multiple views for the same object. Non esiste alcun limite al numero di visualizzazioni che è possibile definire.There is no limit to the number of views that you can define.

Funzionalità comuni dei file di formattazioneCommon Features of Formatting Files

Ogni file di formattazione può definire i componenti seguenti che possono essere condivisi tra tutte le visualizzazioni definite dal file:Each formatting file can define the following components that can be shared across all the views defined by the file:

  • Impostazione di configurazione predefinita, ad esempio se i dati visualizzati nelle righe delle tabelle verranno visualizzati nella riga successiva se i dati sono più lunghi della larghezza della colonna.Default configuration setting, such as whether the data displayed in the rows of tables will be displayed on the next line if the data is longer than the width of the column. Per ulteriori informazioni su queste impostazioni, vedere definizione delle impostazioni di configurazione comuni.For more information about these settings, see Defining Common Configuration Settings.

  • Set di oggetti che possono essere visualizzati da qualsiasi visualizzazione del file di formattazione.Sets of objects that can be displayed by any of the views of the formatting file. Per ulteriori informazioni su questi set (definiti set di selezione), vedere definizione di set di oggetti.For more information about these sets (referred to as selection sets), see Defining Sets of Objects.

  • Controlli comuni che possono essere utilizzati da tutte le visualizzazioni del file di formattazione.Common controls that can be used by all the views of the formatting file. I controlli consentono di ottenere un controllo più preciso sulla modalità di visualizzazione dei dati.Controls give you finer control on how data is displayed. Per ulteriori informazioni sui controlli, vedere definizione di controlli personalizzati.For more information about controls, see Defining Custom Controls.

Formattazione di visualizzazioniFormatting Views

Le visualizzazioni di formattazione possono visualizzare oggetti in formato tabella, formato elenco, formato esteso e formato personalizzato.Formatting views can display objects in a table format, list format, wide format, and custom format. Nella maggior parte dei casi, ogni definizione di formattazione è descritta da un set di tag XML che descrivono la visualizzazione.For the most part, each formatting definition is described by a set of XML tags that describe the view. Ogni vista contiene il nome della vista, gli oggetti che utilizzano la vista e gli elementi della vista, ad esempio le informazioni su colonna e riga per una visualizzazione tabella.Each view contains the name of the view, the objects that use the view, and the elements of the view, such as the column and row information for a table view.

Visualizzazione tabella sono elencate le proprietà di un oggetto o di un valore del blocco di script in una o più colonne.Table View Lists the properties of an object or a script block value in one or more columns. Ogni colonna rappresenta una singola proprietà dell'oggetto o un valore di script.Each column represents a single property of the object or a script value. È possibile definire una vista tabella che Visualizza tutte le proprietà di un oggetto, un subset delle proprietà di un oggetto o una combinazione di proprietà e valori di script.You can define a table view that displays all the properties of an object, a subset of the properties of an object, or a combination of properties and script values. Ogni riga della tabella rappresenta un oggetto restituito.Each row of the table represents a returned object. La creazione di una vista tabella è molto simile a quando si invia tramite pipe un oggetto al Format-Table cmdlet.Creating a table view is very similar to when you pipe an object to the Format-Table cmdlet. Per ulteriori informazioni su questa vista, vedere visualizzazione tabella.For more information about this view, see Table View.

Visualizzazione elenco elenca le proprietà di un oggetto o di un valore di script in un'unica colonna.List View Lists the properties of an object or a script value in a single column. Ogni riga dell'elenco Visualizza un'etichetta facoltativa o il nome della proprietà seguito dal valore della proprietà o dello script.Each row of the list displays an optional label or the property name followed by the value of the property or script. La creazione di una visualizzazione elenco è molto simile a inviare tramite pipe un oggetto al Format-List cmdlet.Creating a list view is very similar to piping an object to the Format-List cmdlet. Per ulteriori informazioni su questa visualizzazione, vedere visualizzazione elenco.For more information about this view, see List View.

Visualizzazione estesa elenca una singola proprietà di un oggetto o un valore di script in una o più colonne.Wide View Lists a single property of an object or a script value in one or more columns. Nessuna etichetta o intestazione per questa visualizzazione.There is no label or header for this view. La creazione di una visualizzazione estesa è molto simile all'invio tramite pipe di un oggetto al Format-Wide cmdlet.Creating a wide view is very similar to piping an object to the Format-Wide cmdlet. Per ulteriori informazioni su questa visualizzazione, vedere visualizzazione estesa.For more information about this view, see Wide View.

Visualizzazione personalizzata consente di visualizzare una visualizzazione personalizzabile delle proprietà degli oggetti o dei valori di script che non sono conformi alla struttura rigida delle visualizzazioni di tabella, delle visualizzazioni elenco o delle visualizzazioni estese.Custom View Displays a customizable view of object properties or script values that does not adhere to the rigid structure of table views, list views, or wide views. È possibile definire una visualizzazione personalizzata autonoma oppure è possibile definire una visualizzazione personalizzata utilizzata da un'altra visualizzazione, ad esempio una visualizzazione tabella o una visualizzazione elenco.You can define a stand-alone custom view, or you can define a custom view that is used by another view, such as a table view or list view. La creazione di una vista personalizzata è molto simile all'invio tramite pipe di un oggetto al Format-Custom cmdlet.Creating a custom view is very similar to piping an object to the Format-Custom cmdlet. Per ulteriori informazioni su questa visualizzazione, vedere visualizzazione personalizzata.For more information about this view, see Custom View.

Componenti di una vistaComponents of a View

Negli esempi XML seguenti vengono illustrati i componenti XML di base di una vista.The following XML examples show the basic XML components of a view. I singoli elementi XML variano a seconda della visualizzazione che si desidera creare, ma i componenti di base delle visualizzazioni sono tutti uguali.The individual XML elements vary depending on which view you want to create, but the basic components of the views are all the same.

Per iniziare, ogni visualizzazione dispone di un Name elemento che specifica un nome descrittivo utilizzato per fare riferimento alla vista.To start with, each view has a Name element that specifies a user friendly name that is used to reference the view. ViewSelectedByelemento che definisce quali oggetti .NET vengono visualizzati dalla visualizzazione e un elemento Control che definisce la visualizzazione.a ViewSelectedBy element that defines which .NET objects are displayed by the view, and a control element that defines the view.

<ViewDefinitions>
  <View>
    <Name>NameOfView</Name>
    <ViewSelectedBy>...</ViewSelectedBy>
    <TableControl>...</TableControl>
  </View>
  <View>
    <Name>NameOfView</Name>
    <ViewSelectedBy>...</ViewSelectedBy>
    <ListControl>...</ListControl>
  <View>
  <View>
    <Name>NameOfView</Name>
    <ViewSelectedBy>...</ViewSelectedBy>
    <WideControl>...</WideControl>
  <View>
  <View>
    <Name>NameOfView</Name>
    <ViewSelectedBy>...</ViewSelectedBy>
    <CustomControl>...</CustomControl>
  </View>
</ViewDefinitions>

All'interno dell'elemento Control è possibile definire uno o più elementi entry .Within the control element, you can define one or more entry elements. Se si usano più definizioni, è necessario specificare gli oggetti .NET che usano ogni definizione.If you use multiple definitions, you must specify which .NET objects use each definition. In genere, per ogni controllo è necessaria una sola voce con una sola definizione.Typically only one entry, with only one definition, is needed for each control.

<ListControl>
  <ListEntries>
    <ListEntry>
      <EntrySelectedBy>...</EntrySelectedBy>
      <ListItems>...</ListItems>
    <ListEntry>
    <ListEntry>
        <EntrySelectedBy>...</EntrySelectedBy>
      <ListItems>...</ListItems>
    <ListEntry>
    <ListEntry>
        <EntrySelectedBy>...</EntrySelectedBy>
      <ListItems>...</ListItems>
    <ListEntry>
  </ListEntries>
</ListControl>

All'interno di ogni elemento entry di una vista, si specificano gli elementi Item che definiscono le proprietà .NET o gli script visualizzati da tale visualizzazione.Within each entry element of a view, you specify the item elements that define the .NET properties or scripts that are displayed by that view.


<ListItems>
  <ListItem>...</ListItem>
  <ListItem>...</ListItem>
  <ListItem>...</ListItem>
</ListItems>

Come illustrato negli esempi precedenti, il file di formattazione può contenere più visualizzazioni, una vista può contenere più definizioni e ogni definizione può contenere più elementi.As shown in the preceding examples, the formatting file can contain multiple views, a view can contain multiple definitions, and each definition can contain multiple items.

Esempio di una vista tabellaExample of a Table View

Nell'esempio seguente vengono illustrati i tag XML utilizzati per definire una vista tabella contenente due colonne.The following example shows the XML tags used to define a table view that contains two columns. L'elemento ViewDefinitions è l'elemento contenitore per tutte le visualizzazioni definite nel file di formattazione.The ViewDefinitions element is the container element for all the views defined in the formatting file. L'elemento View definisce la tabella, l'elenco, la larghezza o la visualizzazione personalizzata specifica.The View element defines the specific table, list, wide, or custom view. All'interno di ogni elemento di visualizzazione , l'elemento Name specifica il nome della vista, l'elemento ViewSelectedBy definisce gli oggetti che utilizzano la visualizzazione e i diversi elementi del controllo, ad esempio l' TableControl elemento illustrato nell'esempio seguente, definiscono il tipo della visualizzazione.Within each View element, the Name element specifies the name of the view, the ViewSelectedBy element defines the objects that use the view, and the different control elements (such as the TableControl element shown in the following example) define the type of the view.

<ViewDefinitions>
  <View>
    <Name>Name of View</Name>
    <ViewSelectedBy>
      <TypeName>Object to display using this view</TypeName>
      <TypeName>Object to display using this view</TypeName>
    </ViewSelectedBy>
    <TableControl>
      <TableHeaders>
        <TableColumnHeader>
          <Width></Width>
        </TableColumnHeader>
        <TableColumnHeader>
          <Width></Width>
        </TableColumnHeader>
      </TableHeaders>
      <TableRowEntries>
        <TableRowEntry>
          <TableColumnItems>
            <TableColumnItem>
              <PropertyName>Header for column 1</PropertyName>
            </TableColumnItem>
            <TableColumnItem>
              <PropertyName>Header for column 2</PropertyName>
            </TableColumnItem>
          </TableColumnItems>
        </TableRowEntry>
      </TableRowEntries>
    </TableControl)
  </View>
</ViewDefinitions>

Vedere ancheSee Also

Creazione di una visualizzazione elencoCreating a List View

Creazione di una visualizzazione tabellaCreating a Table View

Creazione di una visualizzazione più ampiaCreating a Wide View

Creazione dei controlli personalizzatiCreating Custom Controls

Scrittura di un file di formattazione e di tipi di PowerShellWriting a PowerShell Formatting and Types File