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 táblázatnézetek egy vagy több oszlopban jelenítik meg az adatokat. A táblázat minden sora egy .NET-objektumot jelöl, a tábla minden oszlopa pedig az objektum vagy egy szkriptérték tulajdonságát jelöli. Olyan táblanézetet definiálhat, amely egy objektum vagy egy objektum tulajdonságainak egy részhalmazát jeleníti meg.
Táblázatnézet megjelenítése
Az alábbi példa bemutatja, hogyan jeleníti meg a Windows PowerShell a System.ServiceProcess.ServiceController objektumot, amelyet a Get-Service parancsmag ad vissza. Ebben az objektumban a Windows PowerShell definiált egy táblanézetet, amely megjeleníti a Status tulajdonságot, a Name tulajdonságot (ez a tulajdonság a ServiceName tulajdonság aliastulajdonságát) és a DisplayName tulajdonságot. A táblázat minden sora a parancsmag által visszaadott objektumot jelöli.
Status Name DisplayName
------ ---- -----------
Stopped AJRouter AllJoyn Router Service
Stopped ALG Application Layer Gateway Service
Stopped AppIDSvc Application Identity
Running Appinfo Application Information
A Táblázat nézet definiálása
Az alábbi XML a system.ServiceProcess.ServiceController objektum megjelenítésére szolgáló táblázatnézeti sémát mutatja be. Meg kell adnia minden olyan tulajdonságot, amelyet meg szeretne jeleníteni a táblázat nézetben.
<View>
<Name>service</Name>
<ViewSelectedBy>
<TypeName>System.ServiceProcess.ServiceController</TypeName>
</ViewSelectedBy>
<TableControl>
<TableHeaders>
<TableColumnHeader>
<Width>8</Width>
</TableColumnHeader>
<TableColumnHeader>
<Width>18</Width>
</TableColumnHeader>
<TableColumnHeader>
<Width>38</Width>
</TableColumnHeader>
</TableHeaders>
<TableRowEntries>
<TableRowEntry>
<TableColumnItems>
<TableColumnItem>
<PropertyName>Status</PropertyName>
</TableColumnItem>
<TableColumnItem>
<PropertyName>Name</PropertyName>
</TableColumnItem>
<TableColumnItem>
<PropertyName>DisplayName</PropertyName>
</TableColumnItem>
</TableColumnItems>
</TableRowEntry>
</TableRowEntries>
</TableControl>
</View>
A listanézet meghatározásához a következő XML-elemek használhatók:
A Nézet elem a táblanézet szülőeleme. (Ez ugyanaz a szülőelem a lista-, a széles és az 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 (ebben a példában nem látható) határozza meg, hogy mikor jelenjen meg egy ú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 elem (ebben a példában nem látható) határozza meg a táblané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 HideTableHeaders elem (ebben a példában nem jelenik meg) azt határozza meg, hogy a tábla nem jelenít meg címkéket a tábla tetején. Ez az elem nem kötelező.
Az TableControl elem, amely meghatározza a tábla fejléc- és sorinformációit. Az összes többi nézethez hasonlóan a táblázatnézetek is megjeleníthetik a szkriptek által létrehozott objektumtulajdonságok vagy értékek értékeit.
Oszlopfejlécek definiálása
A TableHeaders elem és gyermekelemei határozzák meg a tábla tetején megjelenő elemeket.
A TableColumnHeader elem határozza meg, hogy mi jelenjen meg a tábla oszlopának tetején. Adja meg ezeket az elemeket a fejlécek megjelenítésének sorrendjében.
A használható elemek száma nincs korlátozva, de a táblanézetben TableColumnHeader elemek számának meg kell egyezőnek lennie a TableRowEntry használt elemeinek számával.
A Címke elem határozza meg a megjelenő szöveget. Ez az elem nem kötelező.
A Szélesség elem határozza meg az oszlop szélességét (karakterben). Ez az elem nem kötelező.
A Igazítás elem határozza meg a címke megjelenítését. A címke balra, jobbra vagy középre igazítható. Ez az elem nem kötelező.
A táblasorok meghatározása
A táblanézetek egy vagy több definíciót is megadhatnak, amelyek megadják, hogy milyen adatok jelenjenek meg a tábla soraiban a TableRowEntries elem gyermekelemeinek használatával. Figyelje meg, hogy több definíciót is megadhat a tábla soraihoz, de a sorok fejlécei változatlanok maradnak, függetlenül attól, hogy milyen sordefiníciót használ. A táblák általában csak egy definícióval rendelkeznek.
A következő példában a nézet egyetlen definíciót biztosít, amely megjeleníti a System.Diagnostics.Process objektum több tulajdonságának értékeit. A táblázatnézetek megjeleníthetik egy tulajdonság vagy egy szkript értékét (a példában nem látható) a sorokban.
<TableRowEntries>
<TableRowEntry>
<TableColumnItems>
<TableColumnItem>
<PropertyName>Status</PropertyName>
</TableColumnItem>
<TableColumnItem>
<PropertyName>Name</PropertyName>
</TableColumnItem>
<TableColumnItem>
<PropertyName>DisplayName</PropertyName>
</TableColumnItem>
</TableColumnItems>
</TableRowEntry>
</TableRowEntries>
A következő XML-elemek használhatók egy sor definícióinak megadására:
Az TableRowEntries elem és gyermekelemei határozzák meg, hogy mi jelenjen meg a táblázat soraiban.
A TableRowEntry elem megadja a sor definícióját. Legalább egy TableRowEntry 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 TableRowEntry különböző objektumokat megjelenítő elemeket definiál.
A Körbefuttatás elem azt határozza meg, hogy az oszlopszélességen túli szöveg jelenjen meg a következő sorban. Alapértelmezés szerint az oszlopszélességen túli szöveg csonkolt.
A TableColumnItems elem határozza meg azokat a tulajdonságokat vagy szkripteket, amelyek értékei megjelennek a sorban.
A TableColumnItem elem határozza meg azt a tulajdonságot vagy szkriptet, amelynek értéke megjelenik a sor oszlopában. A sor minden oszlopához TableColumnItem elem szükséges. Az első bejegyzés megjelenik az első oszlopban, a második bejegyzés a második oszlopban stb.
A PropertyName elem határozza meg azt a tulajdonságot, amelynek értéke megjelenik a sorban. Meg kell adnia egy tulajdonságot vagy egy szkriptet, de mindkettőt nem.
A ScriptBlock elem határozza meg azt a szkriptet, amelynek értéke megjelenik a sorban. Meg kell adnia egy szkriptet vagy egy tulajdonságot, de mindkettőt nem.
A FormatString elem egy formátummintát határoz meg, amely meghatározza a tulajdonság vagy a szkript értékének megjelenítését. Ez az elem nem kötelező.
A Igazítás elem határozza meg a tulajdonság vagy szkript értékének megjelenítését. Az érték igazítható balra, jobbra vagy középre. Ez az elem nem kötelező.
A Táblanézetet használó objektumok meghatározása
Kétféleképpen határozhatja meg, hogy mely .NET-objektumok használják a táblané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 táblané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.ServiceProcess.ServiceController</TypeName>
</ViewSelectedBy>
<TableControl>...</TableControl>
</View>
A táblázatnézet által használt objektumok megadásához a következő XML-elemek használhatók:
A ViewSelectedBy elem határozza meg, hogy a listanézet mely objektumokat jeleníti meg.
A TypeName elem határozza meg a nézet által megjelenített .NET-objektumot. 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.
Az alábbi példa a ViewSelectedBy és SelectionSetName elemeket használja. Olyan kijelölési csoportokat használjon, amelyekhez több nézettel megjelenített kapcsolódó objektumkészlet tartozik, például amikor egy listané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>
<TableControl>...</TableControl>
</View>
A listanézet által használt objektumok megadásához a következő XML-elemek használhatók:
A ViewSelectedBy elem határozza meg, hogy a listanézet mely objektumokat jeleníti meg.
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 táblané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.
Megjegyzés
A táblanézet több definíciójának létrehozásakor nem adhat meg különböző oszlopfejléceket. Csak azt adhatja meg, hogy mi jelenjen meg a táblázat soraiban, például hogy milyen objektumok jelenjenek meg.
<TableRowEntry>
<EntrySelectedBy>
<TypeName>.NET Type</TypeName>
</EntrySelectedBy>
</TableRowEntry>
A listanézet adott 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-objektumot. Az elem használatakor szükség van a teljes .NET-típusnévre. 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.
Sztringek formázása
A formázási sztringek hozzáadhatók egy nézethez az adatok megjelenítésének további meghatározásához. Az alábbi példa bemutatja, hogyan definiálhat formázási sztringet a StartTime tulajdonság értékéhez.
<TableColumnItem>
<PropertyName>StartTime</PropertyName>
<FormatString>{0:MMM} {0:DD} {0:HH}:{0:MM}</FormatString>
</TableColumnItem>
Formátumminta megadásához a következő XML-elemek használhatók:
A TableColumnItem elem határozza meg azt a tulajdonságot vagy szkriptet, amelynek értéke megjelenik a sor oszlopában. A sor minden oszlopához TableColumnItem elem szükséges. Az első bejegyzés megjelenik az első oszlopban, a második bejegyzés a második oszlopban stb.
A PropertyName elem határozza meg azt a tulajdonságot, amelynek értéke megjelenik a sorban. 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 a tulajdonság vagy a szkript értékének megjelenítését.
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.
<ListItem>
<ScriptBlock>
[string]::Format("{0,-10} {1,-8}", $_.LastWriteTime.ToString("d"), $_.LastWriteTime.ToString("t"))
</ScriptBlock>
</ListItem>
A ToString metódus meghívásához a következő XML-elem használható:
A TableColumnItem elem határozza meg azt a tulajdonságot vagy szkriptet, amelynek értéke megjelenik a sor oszlopában. A sor minden oszlopához TableColumnItem elem szükséges. Az első bejegyzés megjelenik az első oszlopban, a második bejegyzés a második oszlopban stb.
A ScriptBlock elem határozza meg azt a szkriptet, amelynek értéke megjelenik a sorban. Meg kell adnia egy szkriptet vagy egy tulajdonságot, de mindkettőt nem.