Vytvoření širokého zobrazení

Celé zobrazení zobrazuje jednu hodnotu pro každý zobrazený objekt. Zobrazená hodnota může být hodnota vlastnosti objektu rozhraní .NET nebo hodnota skriptu. Ve výchozím nastavení není pro toto zobrazení k dispozici popisek ani záhlaví.

Zobrazení na šířku

následující příklad ukazuje, jak Windows PowerShell zobrazuje objekt System. diagnostics. proces , který je vrácen rutinou Get-process , když je jeho výstup zřetězený do rutiny na úrovni formátu . (Ve výchozím nastavení vrátí rutina Get-proces zobrazení tabulky.) V tomto příkladu jsou dva sloupce použity k zobrazení názvu procesu pro každý vrácený objekt. Název vlastnosti objektu není zobrazen, pouze hodnota vlastnosti.

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

Definice zobrazení na šířku

Následující kód XML znázorňuje schéma v rámci celé zobrazení pro objekt 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>

K definování širšího zobrazení slouží následující elementy XML:

  • Prvek zobrazení je nadřazeným prvkem pro celé zobrazení. (Toto je stejný nadřazený prvek pro zobrazení tabulky, seznamu a vlastního ovládacího prvku.)

  • Element Name Určuje název zobrazení. Tento prvek je vyžadován pro všechna zobrazení.

  • Element ViewSelectedBy definuje objekty, které používají zobrazení. Tento prvek je povinný.

  • Element GroupBy definuje, kdy se zobrazí nová skupina objektů. Nová skupina se spustí vždy, když se změní hodnota konkrétní vlastnosti nebo skriptu. Tento element je volitelný.

  • Prvky ovládacích prvků definují vlastní ovládací prvky, které jsou definovány v zobrazení celé sítě. Ovládací prvky poskytují způsob, jak dále určit, jak se budou data zobrazovat. Tento element je volitelný. Zobrazení může definovat vlastní ovládací prvky nebo může použít běžné ovládací prvky, které mohou být použity jakýmkoli zobrazením v souboru formátování. Další informace o vlastních ovládacích prvcích najdete v tématu vytváření vlastních ovládacích prvků.

  • Element WideControl a jeho podřízené elementy definují, co se zobrazí v zobrazení. V předchozím příkladu je zobrazení navrženo pro zobrazení vlastnosti System. Diagnostics. Process. DisplayName.

Příklad úplného formátování souboru, který definuje jednoduché zobrazení, najdete v tématu věnovaném celému zobrazení (Basic).

Poskytování definic pro celé zobrazení

Celá zobrazení mohou poskytovat jednu nebo více definic pomocí podřízených prvků prvku WideControl . Zobrazení má typicky jenom jednu definici. V následujícím příkladu zobrazení poskytuje jednu definici, která zobrazí hodnotu vlastnosti System. Diagnostics. Process. FileSystem. Celé zobrazení může zobrazit hodnotu vlastnosti nebo hodnotu skriptu (nezobrazuje se v příkladu).

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

Následující prvky XML lze použít k poskytnutí definic pro celé zobrazení:

  • Element WideControl a jeho podřízené elementy definují, co se zobrazí v zobrazení.

  • Element AutoSize určuje, zda velikost sloupce a počet sloupců jsou upraveny na základě velikosti dat. Tento element je volitelný.

  • Element ColumnNumber určuje počet sloupců zobrazených v zobrazení celé řady. Tento element je volitelný.

  • Element WideEntries poskytuje definice zobrazení. Ve většině případů bude mít zobrazení pouze jednu definici. Tento prvek je povinný.

  • Element WideEntry poskytuje definici zobrazení. Vyžaduje se aspoň jeden WideEntry . Neexistuje však maximální omezení počtu prvků, které lze přidat. Ve většině případů bude mít zobrazení pouze jednu definici.

  • Element EntrySelectedBy určuje objekty, které jsou zobrazeny konkrétní definicí. Tento prvek je volitelný a je vyžadován pouze v případě, že definujete více elementů WideEntry , které zobrazují různé objekty.

  • Element WideItem určuje data zobrazená v zobrazení. Na rozdíl od jiných typů zobrazení se může velmi zobrazovat jenom jedna položka.

  • Element PropertyName určuje vlastnost, jejíž hodnota se zobrazí v zobrazení. Je nutné zadat buď vlastnost, nebo skript, ale nelze zadat obojí.

  • Element ScriptBlock určuje skript, jehož hodnota je zobrazena v zobrazení. Je nutné zadat buď skript, nebo vlastnost, ale nelze zadat obojí.

  • Element formatString určuje vzor, který se používá k zobrazení dat. Tento element je volitelný.

Příklad úplného formátování souboru, který definuje definici celého zobrazení, najdete v tématu věnovaném celému zobrazení (Basic).

Definování objektů, které používají celé zobrazení

Existují dva způsoby, jak definovat, které objekty .NET používají celé zobrazení. Element ViewSelectedBy lze použít k definování objektů, které lze zobrazit pomocí všech definic zobrazení, nebo můžete použít prvek EntrySelectedBy k definování, které objekty jsou zobrazeny určitou definicí zobrazení. Ve většině případů má zobrazení pouze jednu definici, takže objekty jsou obvykle definovány prvkem ViewSelectedBy .

Následující příklad ukazuje, jak definovat objekty, které jsou zobrazeny v rámci celé zobrazení pomocí elementů ViewSelectedBy a TypeName . Neexistuje žádné omezení počtu elementů TypeName , které lze zadat a jejich pořadí není důležité.

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

Pomocí následujících elementů XML lze určit objekty, které jsou používány v rámci celé zobrazení:

  • Element ViewSelectedBy definuje, které objekty se zobrazí v zobrazení celé sítě.

  • Element TypeName určuje rozhraní .NET zobrazené zobrazením. Vyžaduje se plně kvalifikovaný název typu .NET. Je nutné zadat alespoň jeden typ nebo sadu výběru pro zobrazení, neexistuje však žádný maximální počet prvků, které lze zadat.

Příklad kompletního souboru formátování najdete v tématu věnovaném celému zobrazení (Basic).

V následujícím příkladu jsou použity prvky ViewSelectedBy a SelectionSetName . Použijte sady pro výběr, kde máte související sadu objektů, které se zobrazují pomocí více zobrazení, například při definování širšího zobrazení a tabulkového zobrazení pro stejné objekty. Další informace o tom, jak vytvořit sadu výběru, najdete v tématu Definování sad pro výběr.

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

Pomocí následujících elementů XML lze určit objekty, které jsou používány v rámci celé zobrazení:

  • Element ViewSelectedBy definuje, které objekty se zobrazí v zobrazení celé sítě.

  • Element SelectionSetName určuje sadu objektů, které lze zobrazit pomocí zobrazení. Je nutné zadat alespoň jednu sadu nebo typ výběru pro zobrazení, ale neexistuje žádný maximální počet prvků, které lze zadat.

Následující příklad ukazuje, jak definovat objekty zobrazené pomocí konkrétní definice zobrazení na šířku pomocí elementu EntrySelectedBy . Pomocí tohoto prvku můžete zadat název typu .NET objektu, výběr sady objektů nebo podmínku výběru, která určuje, kdy se má definice použít. Další informace o tom, jak vytvořit podmínky výběru, najdete v tématu definování podmínek pro zobrazení dat.

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

Následující prvky XML lze použít k určení objektů, které jsou používány konkrétní definicí zobrazení na šířku:

  • Element EntrySelectedBy definuje, které objekty se zobrazí v definici.

  • Element TypeName určuje rozhraní .NET zobrazené definicí. Při použití tohoto elementu je vyžadován plně kvalifikovaný název typu .NET. Je nutné zadat alespoň jeden typ, sadu výběru nebo podmínku výběru pro definici, ale neexistuje žádný maximální počet prvků, které lze zadat.

  • Element SelectionSetName (nezobrazený) určuje sadu objektů, které lze zobrazit pomocí této definice. Je nutné zadat alespoň jeden typ, sadu výběru nebo podmínku výběru pro definici, ale neexistuje žádný maximální počet prvků, které lze zadat.

  • Element SelectionCondition (nezobrazený) Určuje podmínku, která musí existovat, aby se tato definice dala použít. Je nutné zadat alespoň jeden typ, sadu výběru nebo podmínku výběru pro definici, ale neexistuje žádný maximální počet prvků, které lze zadat. Další informace o definování podmínek výběru najdete v tématu definování podmínek pro zobrazení dat.

Zobrazení skupin objektů v rámci celé zobrazení

Můžete oddělit objekty zobrazené v rámci celé zobrazení do skupin. to neznamená, že definujete skupinu, pouze ta, kterou Windows PowerShell spouští novou skupinu vždy, když se změní hodnota konkrétní vlastnosti nebo skriptu. V následujícím příkladu je nová skupina spuštěna vždy, když se změní hodnota vlastnosti System. ServiceProcess. ServiceController. ServiceType .

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

Následující prvky XML jsou použity k definování při spuštění skupiny:

  • Element GroupBy definuje vlastnost nebo skript, který spouští novou skupinu a definuje způsob zobrazení skupiny.

  • Element PropertyName určuje vlastnost, která spustí novou skupinu při každé změně její hodnoty. Je nutné zadat vlastnost nebo skript ke spuštění skupiny, ale nelze zadat obě.

  • Element ScriptBlock určuje skript, který spouští novou skupinu při každé změně její hodnoty. Je nutné zadat skript nebo vlastnost pro spuštění skupiny, ale nelze zadat obě.

  • Element Label definuje popisek, který se zobrazí na začátku každé skupiny. Kromě textu určeného tímto prvkem zobrazí Windows PowerShell hodnotu, která aktivoval novou skupinu, a před a za popisek přidá prázdný řádek. Tento element je volitelný.

  • Element CustomControl definuje ovládací prvek, který se používá k zobrazení dat. Tento element je volitelný.

  • Element CustomControlName určuje společný ovládací prvek nebo ovládací prvek zobrazení, který se používá k zobrazení dat. Tento element je volitelný.

Příklad kompletního formátovacího souboru, který definuje skupiny, najdete v tématu Široké zobrazení (GroupBy).

Použití formátových řetězců

Formátovací řetězce lze přidat do širokého zobrazení, aby bylo možné dále definovat způsob zobrazení dat. Následující příklad ukazuje, jak definovat formátovací řetězec pro hodnotu StartTime vlastnosti .

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

Následující elementy XML lze použít k určení vzoru formátu:

  • Element WideItem určuje data zobrazená zobrazením.

  • Element PropertyName určuje vlastnost, jejíž hodnotu zobrazení zobrazuje. Musíte zadat buď vlastnost, nebo skript, ale nemůžete zadat obojí.

  • Element FormatString určuje formátový vzor, který definuje způsob zobrazení vlastnosti nebo hodnoty skriptu v zobrazení.

  • Element ScriptBlock (nezobrazuje se) určuje skript, jehož hodnota se zobrazí v zobrazení. Musíte zadat buď skript, nebo vlastnost, ale nemůžete zadat obojí.

V následujícím příkladu je ToString volána metoda pro formátování hodnoty skriptu. Skripty mohou volat libovolnou metodu objektu. Proto pokud má objekt metodu, například , která má formátovací parametry, skript může tuto metodu zavolat a naformátovat výstupní ToString hodnotu skriptu.

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

K volání metody lze použít následující element ToString XML:

  • Element WideItem určuje data zobrazená zobrazením.

  • Element ScriptBlock (nezobrazuje se) určuje skript, jehož hodnota se zobrazí v zobrazení. Musíte zadat buď skript, nebo vlastnost, ale nemůžete zadat obojí.

Viz také

Široké zobrazení (Basic)

Široké zobrazení (GroupBy)

Vytvoření formátovacího souboru PowerShellu