Een brede weergave maken

In een brede weergave wordt één waarde weergegeven voor elk object dat wordt weergegeven. De weergegeven waarde kan de waarde van een .NET-object-eigenschap of de waarde van een script zijn. Standaard is er geen label of koptekst voor deze weergave.

Een brede weergave

In het volgende voorbeeld ziet u hoe Windows PowerShell het object System.Diagnostics.Process we geeft dat wordt geretourneerd door de cmdlet Get-Process wanneer de uitvoer wordt doorsleesd naar de cmdlet Format-Wide. (De cmdlet Get-Process retourneert standaard een tabelweergave.) In dit voorbeeld worden de twee kolommen gebruikt om de naam van het proces voor elk geretourneerd object weer te geven. De naam van de eigenschap van het object wordt niet weergegeven, alleen de waarde van de eigenschap .

Get-Process | format-wide
AEADISRV                     agrsmsvc
Ati2evxx                     Ati2evxx
audiodg                      CCC
CcmExec                      communicator
Crypserv                     csrss
csrss                        DevDtct2
DM1Service                   dpupdchk
dwm                          DxStudio
EXCEL                        explorer
GoogleToolbarNotifier        GrooveMonitor
hpqwmiex                     hpservice
Idle                         InoRpc
InoRT                        InoTask
ipoint                       lsass
lsm                          MOM
MSASCui                      notepad
...                          ...

De brede weergave definiëren

De volgende XML toont het wide view-schema voor het object System.Diagnostics.Process.

View>
  <Name>process</Name>
  <ViewSelectedBy>
    <TypeName>System.Diagnostics.Process</TypeName>
  </ViewSelectedBy>
  <GroupBy>...</GroupBy>
  <Controls>...</Controls>
  <WideControl>
    <WideEntries>
      <WideEntry>
        <WideItem>
          <PropertyName>ProcessName</PropertyName>
        </WideItem>
      </WideEntry>
    </WideEntries>
  </WideControl>
</View>

De volgende XML-elementen worden gebruikt om een brede weergave te definiëren:

  • Het element Weergave is het bovenliggende element van de brede weergave. (Dit is hetzelfde bovenliggende element voor de weergaven tabel, lijst en aangepast besturingselement.)

  • Het element Naam geeft de naam van de weergave op. Dit element is vereist voor alle weergaven.

  • Het element ViewSelectedBy definieert de objecten die gebruikmaken van de weergave. Dit element is vereist.

  • Het element GroupBy definieert wanneer een nieuwe groep objecten wordt weergegeven. Een nieuwe groep wordt gestart wanneer de waarde van een specifieke eigenschap of script wordt gewijzigd. Dit element is optioneel.

  • De elementen Van besturingselementen definiëren de aangepaste besturingselementen die worden gedefinieerd door de brede weergave. Met besturingselementen kunt u verder opgeven hoe de gegevens worden weergegeven. Dit element is optioneel. Een weergave kan zijn eigen aangepaste besturingselementen definiëren of algemene besturingselementen gebruiken die door elke weergave in het opmaakbestand kunnen worden gebruikt. Zie Aangepaste besturingselementen maken voor meer informatie over aangepaste besturingselementen.

  • Het element WideControl en de onderliggende elementen definiëren wat er in de weergave wordt weergegeven. In het voorgaande voorbeeld is de weergave ontworpen om de eigenschap System.Diagnostics.Process.Processname weer te geven.

Zie Wide View (Basic) voor een voorbeeld van een volledig opmaakbestand dat een eenvoudige brede weergave definieert.

Definities verstrekken voor uw brede weergave

Brede weergaven kunnen een of meer definities bieden met behulp van de onderliggende elementen van het widecontrol-element. Normaal gesproken heeft een weergave slechts één definitie. In het volgende voorbeeld biedt de weergave één definitie waarin de waarde van de eigenschap System.Diagnostics.Process.Processname wordt weergegeven. Een brede weergave kan de waarde van een eigenschap of de waarde van een script weergeven (niet weergegeven in het voorbeeld).

<WideControl>
  <AutoSize/>
  <ColumnNumber></ColumnNumber>
  <WideEntries>
    <WideEntry>
      <WideItem>
        <PropertyName>ProcessName</PropertyName>
      </WideItem>
    </WideEntry>
  </WideEntries>
</WideControl>

De volgende XML-elementen kunnen worden gebruikt om definities te bieden voor een brede weergave:

  • Het element WideControl en de onderliggende elementen definiëren wat er in de weergave wordt weergegeven.

  • Het element AutoSize geeft aan of de kolomgrootte en het aantal kolommen worden aangepast op basis van de grootte van de gegevens. Dit element is optioneel.

  • Het element ColumnNumber geeft het aantal kolommen aan dat wordt weergegeven in de brede weergave. Dit element is optioneel.

  • Het element WideEntries bevat de definities van de weergave. In de meeste gevallen heeft een weergave slechts één definitie. Dit element is vereist.

  • Het element WideEntry biedt een definitie van de weergave. Er is ten minste één WideEntry-poging vereist; Er is echter geen maximumlimiet voor het aantal elementen dat u kunt toevoegen. In de meeste gevallen heeft een weergave slechts één definitie.

  • Het element EntrySelectedBy geeft de objecten op die worden weergegeven door een specifieke definitie. Dit element is optioneel en is alleen nodig wanneer u meerdere WideEntry-elementen definieert die verschillende objecten weergeven.

  • Het element WideItem geeft de gegevens op die door de weergave worden weergegeven. In tegenstelling tot andere typen weergaven kan een breed besturingselement slechts één item weergeven.

  • Het element PropertyName geeft de eigenschap aan waarvan de waarde wordt weergegeven door de weergave. U moet een eigenschap of een script opgeven, maar u kunt niet beide opgeven.

  • Het element ScriptBlock geeft het script aan waarvan de waarde wordt weergegeven in de weergave. U moet een script of een eigenschap opgeven, maar u kunt niet beide opgeven.

  • Het element FormatString geeft een patroon op dat wordt gebruikt om de gegevens weer te geven. Dit element is optioneel.

Zie Wide View (Basic) voor een voorbeeld van een volledig opmaakbestand dat een definitie van een brede weergave definieert.

De objecten definiëren die gebruikmaken van de brede weergave

Er zijn twee manieren om te definiëren welke .NET-objecten de brede weergave gebruiken. U kunt het element ViewSelectedBy gebruiken om de objecten te definiëren die kunnen worden weergegeven door alle definities van de weergave, of u kunt het element EntrySelectedBy gebruiken om te definiëren welke objecten worden weergegeven door een specifieke definitie van de weergave. In de meeste gevallen heeft een weergave slechts één definitie, waardoor objecten doorgaans worden gedefinieerd door het element ViewSelectedBy.

In het volgende voorbeeld ziet u hoe u de objecten definieert die door de brede weergave worden weergegeven met behulp van de elementen ViewSelectedBy en TypeName. Er is geen limiet voor het aantal TypeName-elementen dat u kunt opgeven en de volgorde is niet belangrijk.

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

De volgende XML-elementen kunnen worden gebruikt om de objecten op te geven die worden gebruikt door de brede weergave:

  • Het element ViewSelectedBy definieert welke objecten door de brede weergave worden weergegeven.

  • Het element TypeName geeft het .NET op dat door de weergave wordt weergegeven. De volledig gekwalificeerde .NET-typenaam is vereist. U moet ten minste één type of selectieset opgeven voor de weergave, maar er is geen maximum aantal elementen dat kan worden opgegeven.

Zie Wide View (Basic)voor een voorbeeld van een volledig opmaakbestand.

In het volgende voorbeeld worden de elementen ViewSelectedBy en SelectionSetName gebruikt. Gebruik selectiesets waarin u een gerelateerde set objecten hebt die worden weergegeven met behulp van meerdere weergaven, bijvoorbeeld wanneer u een brede weergave en een tabelweergave voor dezelfde objecten definieert. Zie Selectiesets definiëren voor meer informatie over het maken van een selectieset.

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

De volgende XML-elementen kunnen worden gebruikt om de objecten op te geven die worden gebruikt door de brede weergave:

  • Het element ViewSelectedBy definieert welke objecten door de brede weergave worden weergegeven.

  • Het element SelectionSetName geeft een set objecten aan die door de weergave kunnen worden weergegeven. U moet ten minste één selectieset of type opgeven voor de weergave, maar er is geen maximum aantal elementen dat kan worden opgegeven.

In het volgende voorbeeld ziet u hoe u de objecten definieert die worden weergegeven door een specifieke definitie van de brede weergave met behulp van het element EntrySelectedBy. Met dit element kunt u de .NET-typenaam van het object, een selectieset objecten of een selectievoorwaarde opgeven die aangeeft wanneer de definitie wordt gebruikt. Zie Voorwaarden definiëren voor het weergeven van gegevens voor meer informatie over het maken van een selectievoorwaarden.

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

De volgende XML-elementen kunnen worden gebruikt om de objecten op te geven die worden gebruikt door een specifieke definitie van de brede weergave:

  • Het element EntrySelectedBy definieert welke objecten door de definitie worden weergegeven.

  • Het element TypeName geeft het .NET op dat wordt weergegeven door de definitie. Wanneer u dit element gebruikt, is de volledig gekwalificeerde .NET-typenaam vereist. U moet ten minste één type, selectieset of selectievoorwaarde opgeven voor de definitie, maar er is geen maximum aantal elementen dat kan worden opgegeven.

  • Het element SelectionSetName (niet weergegeven) geeft een set objecten op die door deze definitie kunnen worden weergegeven. U moet ten minste één type, selectieset of selectievoorwaarde opgeven voor de definitie, maar er is geen maximum aantal elementen dat kan worden opgegeven.

  • Het element SelectionCondition (niet weergegeven) geeft een voorwaarde op die moet bestaan om deze definitie te kunnen gebruiken. U moet ten minste één type, selectieset of selectievoorwaarde opgeven voor de definitie, maar er is geen maximum aantal elementen dat kan worden opgegeven. Zie Voorwaarden definiëren voor het weergeven van gegevens voor meer informatie over het definiëren van selectievoorwaarden.

Groepen objecten weergeven in een brede weergave

U kunt de objecten die door de brede weergave worden weergegeven, in groepen scheiden. Dit betekent niet dat u een groep definieert, alleen dat Windows PowerShell een nieuwe groep start wanneer de waarde van een specifieke eigenschap of script wordt gewijzigd. In het volgende voorbeeld wordt een nieuwe groep gestart wanneer de waarde van de eigenschap System.Serviceprocess.Servicecontroller.Servicetype wordt gewijzigd.

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

De volgende XML-elementen worden gebruikt om te definiëren wanneer een groep wordt gestart:

  • Het element GroupBy definieert de eigenschap of het script dat de nieuwe groep start en definieert hoe de groep wordt weergegeven.

  • Het element PropertyName geeft de eigenschap aan die een nieuwe groep start wanneer de waarde ervan verandert. U moet een eigenschap of script opgeven om de groep te starten, maar u kunt niet beide opgeven.

  • Het element ScriptBlock geeft het script aan dat een nieuwe groep start wanneer de waarde ervan verandert. U moet een script of eigenschap opgeven om de groep te starten, maar u kunt niet beide opgeven.

  • Het element Label definieert een label dat aan het begin van elke groep wordt weergegeven. Naast de tekst die is opgegeven door dit element, wordt Windows PowerShell waarde weergegeven die de nieuwe groep heeft geactiveerd en wordt er een lege regel voor en na het label toegevoegd. Dit element is optioneel.

  • Het element CustomControl definieert een besturingselement dat wordt gebruikt om de gegevens weer te geven. Dit element is optioneel.

  • Het element CustomControlName geeft een algemeen besturingselement of een weergavebesturingselement op dat wordt gebruikt om de gegevens weer te geven. Dit element is optioneel.

Zie Wide View (GroupBy) voor een voorbeeld van een volledig opmaakbestand dat groepen definieert.

Opmaakreeksen gebruiken

Opmaakreeksen kunnen worden toegevoegd aan een brede weergave om verder te definiëren hoe de gegevens worden weergegeven. In het volgende voorbeeld ziet u hoe u een opmaakreeks voor de waarde van de eigenschap StartTime definieert.

<WideItem>
  <PropertyName>StartTime</PropertyName>
  <FormatString>{0:MMM} {0:DD} {0:HH}:{0:MM}</FormatString>
</WideItem>

De volgende XML-elementen kunnen worden gebruikt om een indelingspatroon op te geven:

  • Het element WideItem geeft de gegevens op die door de weergave worden weergegeven.

  • Het element PropertyName geeft de eigenschap aan waarvan de waarde wordt weergegeven door de weergave. U moet een eigenschap of een script opgeven, maar u kunt niet beide opgeven.

  • Het element FormatString geeft een indelingspatroon aan dat definieert hoe de eigenschap of scriptwaarde wordt weergegeven in de weergave

  • Het element ScriptBlock (niet weergegeven) geeft het script aan waarvan de waarde wordt weergegeven in de weergave. U moet een script of een eigenschap opgeven, maar u kunt niet beide opgeven.

In het volgende voorbeeld wordt de ToString methode aangeroepen om de waarde van het script op te maken. Scripts kunnen elke methode van een object aanroepen. Als een object daarom een methode heeft, zoals , die opmaakparameters heeft, kan het script die methode aanroepen om de uitvoerwaarde van het ToString script op te maken.

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

Het volgende XML-element kan worden gebruikt om de methode aan te ToString roepen:

  • Het element WideItem geeft de gegevens op die door de weergave worden weergegeven.

  • Het element ScriptBlock (niet weergegeven) geeft het script aan waarvan de waarde wordt weergegeven in de weergave. U moet een script of een eigenschap opgeven, maar u kunt niet beide opgeven.

Zie ook

Brede weergave (Basis)

Brede weergave (GroupBy)

Een PowerShell-opmaakbestand schrijven