Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A széles nézet minden megjelenített objektumhoz egyetlen értéket jelenít meg. A megjelenített érték lehet egy .NET-objektumtulajdonság vagy egy szkript értéke. Alapértelmezés szerint ehhez a nézethez nincs címke vagy fejléc.
Széles nézetű kijelző
Az alábbi példa bemutatja, hogyan jeleníti meg a Windows PowerShell a System.Diagnostics.Process objektumot, amelyet a Get-Process parancsmag visszaadott, amikor a kimenete a Formátumszintű parancsmagra van állítva. (Alapértelmezés szerint a Get-Process parancsmag táblanézetet ad vissza.) Ebben a példában a két oszlop az egyes visszaadott objektumok folyamatának nevének megjelenítésére szolgál. Az objektum tulajdonságának neve nem jelenik meg, csak a tulajdonság értéke.
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
... ...
A széles nézet definiálása
Az alábbi XML az System.Diagnostics.Process objektum széles nézetsémát mutatja be.
<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>
A széles nézet meghatározásához a következő XML-elemek használhatók:
- A Nézet elem a széles nézet szülőeleme. (Ez ugyanaz a szülőelem a táblázat-, lista- és egyéni vezérlőnézetekhez.)
- A Név elem határozza meg a nézet nevét. Ez az elem minden nézethez szükséges.
- A ViewSelectedBy elem határozza meg a nézetet használó objektumokat. Ez az elem szükséges.
- A GroupBy elem határozza meg, hogy mikor jelenjen meg új objektumcsoport. Egy új csoport akkor indul el, amikor egy adott tulajdonság vagy szkript értéke megváltozik. Ez az elem nem kötelező.
- A Vezérlők elemek határozzák meg a széles nézet által definiált egyéni vezérlőket. A vezérlők lehetővé teszik az adatok megjelenítésének további megadását. Ez az elem nem kötelező. Egy nézet definiálhatja saját egyéni vezérlőit, vagy használhat olyan gyakori vezérlőket, amelyeket a formázási fájl bármely nézete használhat. További információ az egyéni vezérlőkről: Egyéni vezérlők létrehozása.
- A WideControl elem és gyermekelemei határozzák meg a nézetben megjelenő elemeket. Az előző példában a nézet a System.Diagnostics.Process.ProcessName tulajdonság megjelenítésére lett kialakítva.
Egy egyszerű széles nézetet meghatározó teljes formázási fájlra példa: Széles nézet (Alapszintű).
Definíciók megadása a széles nézethez
A széles nézetek a WideControl elem gyermekelemeinek használatával adhatnak meg egy vagy több definíciót. Egy nézet általában csak egy definícióval rendelkezik. A következő példában a nézet egyetlen definíciót biztosít, amely megjeleníti a System.Diagnostics.Process.ProcessName tulajdonságot. A széles nézet megjelenítheti egy tulajdonság vagy egy szkript értékét (a példában nem látható).
<WideControl>
<AutoSize/>
<ColumnNumber></ColumnNumber>
<WideEntries>
<WideEntry>
<WideItem>
<PropertyName>ProcessName</PropertyName>
</WideItem>
</WideEntry>
</WideEntries>
</WideControl>
A széles nézet definícióinak megadásához a következő XML-elemek használhatók:
- A WideControl elem és gyermekelemei határozzák meg a nézetben megjelenő elemeket.
- Az Automatikus méretezés elem határozza meg, hogy az oszlop mérete és az oszlopok száma az adatok méretétől függően van-e módosítva. Ez az elem nem kötelező.
- A ColumnNumber elem határozza meg a széles nézetben megjelenített oszlopok számát. Ez az elem nem kötelező.
- A WideEntries elem adja meg a nézet definícióit. A legtöbb esetben egy nézetnek csak egy definíciója lesz. Ez az elem szükséges.
- A WideEntry elem definiálja a nézetet. Legalább egy WideEntry szükséges; azonban nincs maximális korlátja a felvehető elemek számának. A legtöbb esetben egy nézetnek csak egy definíciója lesz.
- A EntrySelectedBy elem egy adott definíció által megjelenített objektumokat adja meg. Ez az elem nem kötelező, és csak akkor szükséges, ha több WideEntry különböző objektumokat megjelenítő elemeket definiál.
- A WideItem elem határozza meg a nézet által megjelenített adatokat. Más típusú nézetekkel ellentétben a széles vezérlők csak egy elemet jeleníthetnek meg.
- A PropertyName elem határozza meg azt a tulajdonságot, amelynek értékét a nézet megjeleníti. Meg kell adnia egy tulajdonságot vagy egy szkriptet, de mindkettőt nem.
- A ScriptBlock elem határozza meg azt a szkriptet, amelynek értékét a nézet megjeleníti. Meg kell adnia egy szkriptet vagy egy tulajdonságot, de mindkettőt nem adhatja meg.
- A FormatString elem az adatok megjelenítéséhez használt mintát adja meg. Ez az elem nem kötelező.
A széles nézetdefiníciót definiáló teljes formázási fájlra példa: Széles nézet (Alapszintű).
A széles nézetet használó objektumok meghatározása
Kétféleképpen határozhatja meg, hogy mely .NET-objektumok használják a széles nézetet. A ViewSelectedBy elem használatával definiálhatja a nézet összes definíciója által megjeleníthető objektumokat, vagy a EntrySelectedBy elem használatával meghatározhatja, hogy mely objektumok jelenjenek meg a nézet adott definíciója alapján. A legtöbb esetben egy nézetnek csak egy definíciója van, ezért az objektumokat általában a ViewSelectedBy elem határozza meg.
Az alábbi példa bemutatja, hogyan definiálhatja a széles nézet által megjelenített objektumokat a ViewSelectedBy és TypeName elemekkel. Nincs korlátozva a megadható TypeName elemek száma, és a sorrendjük nem jelentős.
<View>
<Name>System.ServiceProcess.ServiceController</Name>
<ViewSelectedBy>
<TypeName>System.Diagnostics.Process</TypeName>
</ViewSelectedBy>
<WideControl>...</WideControl>
</View>
A széles nézet által használt objektumok megadásához a következő XML-elemek használhatók:
- A ViewSelectedBy elem határozza meg, hogy mely objektumok jelenjenek meg a széles nézetben.
- A TypeName elem határozza meg a nézet által megjelenített .NET-et. A teljes .NET-típusnév megadása kötelező. A nézethez legalább egy típust vagy kijelölési csoportot meg kell adnia, de nem adható meg maximális számú elem.
Egy teljes formázási fájlra példa: Széles nézet (Alapszintű).
Az alábbi példa a ViewSelectedBy és SelectionSetName elemeket használja. Olyan kijelölési csoportokat használjon, amelyekben több nézettel megjelenített kapcsolódó objektumkészlettel rendelkezik, például ha egy széles nézetet és egy táblázatnézetet határoz meg ugyanazon objektumokhoz. További információ a kijelölési csoportok létrehozásáról: Kijelöléskészletek definiálása.
<View>
<Name>System.ServiceProcess.ServiceController</Name>
<ViewSelectedBy>
<SelectionSetName>.NET Type Set</SelectionSetName>
</ViewSelectedBy>
<WideControl>...</WideControl>
</View>
A széles nézet által használt objektumok megadásához a következő XML-elemek használhatók:
- A ViewSelectedBy elem határozza meg, hogy mely objektumok jelenjenek meg a széles nézetben.
- A SelectionSetName elem a nézet által megjeleníthető objektumok készletét adja meg. Meg kell adnia legalább egy kijelölési csoportot vagy típust a nézethez, de nincs megadva maximális számú elem.
Az alábbi példa bemutatja, hogyan definiálhatja a széles nézet adott definíciója által megjelenített objektumokat a EntrySelectedBy elem használatával. Ezzel az elemet használva megadhatja az objektum .NET-típusnevét, az objektumok kijelölési készletét vagy a definíció használatát meghatározó kijelölési feltételt. További információ a kijelölési feltételek létrehozásáról: Adatmegjelenítési feltételek meghatározása.
<WideEntry>
<EntrySelectedBy>
<TypeName>.NET Type</TypeName>
</EntrySelectedBy>
</WideEntry>
A széles nézet meghatározott definíciója által használt objektumok megadásához a következő XML-elemek használhatók:
- A EntrySelectedBy elem határozza meg, hogy a definíció mely objektumokat jeleníti meg.
- A TypeName elem határozza meg a definíció által megjelenített .NET-et. Az elem használatakor a teljes mértékben minősített .NET-típusnévre van szükség. Meg kell adnia legalább egy típust, kijelölési csoportot vagy kijelölési feltételt a definícióhoz, de nem adható meg maximális számú elem.
- A SelectionSetName elem (nem jelenik meg) a definíció által megjeleníthető objektumok készletét adja meg. Meg kell adnia legalább egy típust, kijelölési csoportot vagy kijelölési feltételt a definícióhoz, de nem adható meg maximális számú elem.
- A SelectionCondition elem (nem jelenik meg) egy feltételt határoz meg, amely a definíció használatához szükséges. Meg kell adnia legalább egy típust, kijelölési csoportot vagy kijelölési feltételt a definícióhoz, de nem adható meg maximális számú elem. A kiválasztási feltételek meghatározásáról további információt Az adatok megjelenítésének feltételeinek meghatározásacímű témakörben talál.
Objektumcsoportok megjelenítése széles nézetben
A széles nézet által megjelenített objektumokat csoportokra bonthatja. Ez nem jelenti azt, hogy definiál egy csoportot, csak azt, hogy a Windows PowerShell új csoportot indít el, amikor egy adott tulajdonság vagy szkript értéke megváltozik. Az alábbi példában egy új csoport indul el, amikor a System.ServiceProcess.ServiceController.ServiceType tulajdonság értéke megváltozik tulajdonság.
<GroupBy>
<Label>Service Type</Label>
<PropertyName>ServiceType</PropertyName>
</GroupBy>
A következő XML-elemek határozzák meg, hogy mikor indul el egy csoport:
- A GroupBy elem határozza meg az új csoportot kezdő tulajdonságot vagy szkriptet, és meghatározza a csoport megjelenítésének módját.
- A PropertyName elem határozza meg azt a tulajdonságot, amely az érték változásakor új csoportot indít el. A csoport indításához meg kell adnia egy tulajdonságot vagy szkriptet, de mindkettőt nem.
- A ScriptBlock elem határozza meg azt a szkriptet, amely új csoportot indít el, amikor annak értéke megváltozik. A csoport indításához meg kell adnia egy szkriptet vagy tulajdonságot, de mindkettőt nem.
- A Címke elem definiálja az egyes csoportok elején megjelenő címkét. Az elem által megadott szöveg mellett a Windows PowerShell megjeleníti az új csoportot aktiváló értéket, és hozzáad egy üres sort a címke előtt és után. Ez az elem nem kötelező.
- A CustomControl elem definiálja az adatok megjelenítéséhez használt vezérlőt. Ez az elem nem kötelező.
- A CustomControlName elem egy általános vagy nézetvezérlőt határoz meg, amely az adatok megjelenítésére szolgál. Ez az elem nem kötelező.
A csoportokat definiáló teljes formázási fájlra példa: Wide View (GroupBy).
Sztringek formázása
A formázási sztringek széles nézethez is hozzáadhatók, így tovább definiálhatók az adatok megjelenítési módjának meghatározása. Az alábbi példa bemutatja, hogyan definiálhat formázási sztringet a StartTime tulajdonság értékéhez.
<WideItem>
<PropertyName>StartTime</PropertyName>
<FormatString>{0:MMM} {0:DD} {0:HH}:{0:MM}</FormatString>
</WideItem>
Formátumminta megadásához a következő XML-elemek használhatók:
- A WideItem elem határozza meg a nézet által megjelenített adatokat.
- A PropertyName elem határozza meg azt a tulajdonságot, amelynek értékét a nézet megjeleníti. Meg kell adnia egy tulajdonságot vagy egy szkriptet, de mindkettőt nem.
- A FormatString elem egy formátummintát határoz meg, amely meghatározza, hogy a tulajdonság vagy a szkript értéke hogyan jelenjen meg a nézetben
- A ScriptBlock elem (nem jelenik meg) azt a szkriptet határozza meg, amelynek értékét a nézet jeleníti meg. Meg kell adnia egy szkriptet vagy egy tulajdonságot, de mindkettőt nem adhatja meg.
Az alábbi példában a szkript értékének formázásához a ToString metódust hívjuk meg. A szkriptek az objektumok bármely metódusát meghívhatják. Ezért ha egy objektum olyan metódussal rendelkezik, például ToString, amely formázási paraméterekkel rendelkezik, a szkript meghívhatja ezt a metódust a szkript kimeneti értékének formázására.
<WideItem>
<ScriptBlock>
[string]::Format("{0,-10} {1,-8}", $_.LastWriteTime.ToString("d"), $_.LastWriteTime.ToString("t"))
</ScriptBlock>
</WideItem>
A ToString metódus meghívásához a következő XML-elem használható:
- A WideItem elem határozza meg a nézet által megjelenített adatokat.
- A ScriptBlock elem (nem jelenik meg) azt a szkriptet határozza meg, amelynek értékét a nézet jeleníti meg. Meg kell adnia egy szkriptet vagy egy tulajdonságot, de mindkettőt nem adhatja meg.