Biçimlendirme Dosyasına Genel Bakış
Komutlar (cmdlet'ler, işlevler ve betikler) tarafından döndürülen nesnelerin görüntüleme biçimi, biçimlendirme dosyaları (format.ps1xml dosyaları) kullanılarak tanımlanır. Bu dosyalardan birkaçı, Cmdlet tarafından döndürülen System.Diagnostics.Process nesnesi gibi PowerShell tarafından sağlanan komutlar tarafından döndürülen nesnelerin görüntüleme biçimini tanımlamak için PowerShell tarafından Get-Process
sağlanır. Ancak, varsayılan görüntüleme biçimlerinin üzerine yazmak için kendi özel biçimlendirme dosyalarınızı da oluşturabilir veya kendi komutlarınız tarafından döndürülen nesnelerin görüntülemesini tanımlamak için özel bir biçimlendirme dosyası yazabilirsiniz.
Önemli
Dosyaları biçimlendirme, işlem hattına döndürülen bir nesnenin öğelerini belirlemez. İşlem hattına bir nesne döndürüldü, bazıları görüntülenmese bile o nesnenin tüm üyeleri kullanılabilir.
PowerShell, görüntülenen verileri ve görüntülenen verilerin nasıl biçimlendirildiklerini belirlemek için bu biçimlendirme dosyalarında yer alan verileri kullanır. Görüntülenen veriler bir nesnenin özelliklerini veya bir betiğin değerini içerebilir. Bir nesnenin iki özelliğin değerini ekleme ve ardından toplamı bir veri parçası olarak görüntüleme gibi, doğrudan bir nesnenin özelliklerinden kullanılabilir durumda olan bir değeri görüntülemek için betikler kullanılır. Görüntülenen verilerin biçimlendirmesi, görüntülemek istediğiniz nesneler için görünümler tanımlayarak yapılır. Her nesne için tek bir görünüm tanımlayabilir, birden çok nesne için tek bir görünüm tanımlayabilir veya aynı nesne için birden çok görünüm tanımlayabilirsiniz. Tanımladığınız görünüm sayısıyla ilgili bir sınır yoktur.
Dosyaları Biçimlendirmenin Ortak Özellikleri
Her biçimlendirme dosyası, dosya tarafından tanımlanan tüm görünümlerde paylaşılacak aşağıdaki bileşenleri tanımlayabilir:
Tablo satırlarında görüntülenen verilerin sütunun genişliğinden daha uzun olması halinde sonraki satırda gösterip görüntülenmeyecekleri gibi varsayılan yapılandırma ayarı. Bu ayarlar hakkında daha fazla bilgi için bkz. TableRowEntry için Kaydırma Öğesi.
Biçimlendirme dosyasının görünümlerinin herhangi biri tarafından görüntülenebilir nesne kümeleri. Bu kümeler hakkında daha fazla bilgi için (seçim kümeleri olarak adlandırılır), bkz. Nesne Kümelerini Tanımlama.
Biçimlendirme dosyasının tüm görünümleri tarafından kullanılmaktadır ortak denetimler. Denetimler, verilerin nasıl görüntülendiğinde size daha iyi denetim sağlar. Denetimler hakkında daha fazla bilgi için bkz. Özel Denetimleri Tanımlama.
Görünümleri Biçimlendirme
Biçimlendirme görünümleri nesneleri bir tablo biçiminde, liste biçiminde, geniş biçimde ve özel biçimde görüntülemenizi sağlar. Çoğu bölümde, her biçimlendirme tanımı görünümü açıklayan bir XML etiketleri kümesi tarafından açıklanmıştır. Her görünüm görünümün adını, görünümü kullanan nesneleri ve tablo görünümü için sütun ve satır bilgileri gibi görünümün öğelerini içerir.
Tablo Görünümü
Bir veya daha fazla sütunda bir nesnenin veya betik bloğu değerinin özelliklerini listeler. Her sütun nesnenin veya betik değerinin tek bir özelliğini temsil eder. Bir nesnenin tüm özelliklerini, bir nesnenin özelliklerinin bir alt kümesini veya özellikler ile betik değerlerinin bir birleşimini görüntüleyen bir tablo görünümü tanımlayabilirsiniz. Tablonun her satırı döndürülen bir nesneyi temsil eder.
Tablo görünümü oluşturmak, bir nesneyi cmdlet'e yöneltme ile Format-Table
oldukça benzerdir. Bu görünüm hakkında daha fazla bilgi için bkz. Tablo Görünümü.
Liste Görünümü
Bir nesnenin veya betik değerinin özelliklerini tek bir sütunda listeler. Listenin her satırı isteğe bağlı bir etiket veya özellik adını ve ardından özelliğin veya betiğin değerini görüntüler. Liste görünümü oluşturmak, bir nesneyi cmdlet'e eklemeye Format-List
çok benzer. Bu görünüm hakkında daha fazla bilgi için bkz. Liste Görünümü.
Geniş Görünüm
Bir nesnenin tek bir özelliğini veya bir veya daha fazla sütunda bir betik değerini listeler. Bu görünüm için etiket veya üst bilgi yoktur. Geniş bir görünüm oluşturmak, bir nesneyi cmdlet'ine eklemeye Format-Wide
çok benzer. Bu görünüm hakkında daha fazla bilgi için bkz. Geniş Görünüm.
Özel Görünüm
Nesne özelliklerinin veya tablo görünümlerinin katı yapısına, liste görünümlerine veya geniş görünümlere uymaz betik değerlerinin özelleştirilebilir bir görünümünü görüntüler. Tek başına bir özel görünüm tanımlayabilir veya tablo görünümü veya liste görünümü gibi başka bir görünüm tarafından kullanılan özel bir görünüm tanımlayabilirsiniz.
Özel görünüm oluşturmak, bir nesneyi cmdlet'e eklemeye Format-Custom
çok benzer. Bu görünüm hakkında daha fazla bilgi için bkz. Özel Görünüm.
Görünümün Bileşenleri
Aşağıdaki XML örnekleri bir görünümün temel XML bileşenlerini gösterir. Tek tek XML öğeleri, oluşturmak istediğiniz görünüme bağlı olarak farklılık gösterir, ancak görünümlerin temel bileşenleri aynıdır.
Başlangıç olarak, her görünümün Name
görünüme başvuru için kullanılan kolay bir adı belirten bir öğesi vardır. görünüm ViewSelectedBy
tarafından hangi .NET nesnelerinin görüntülendiğinde tanımlayan bir öğe ve görünümü tanımlayan bir denetim öğesi.
<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>
Denetim öğesi içinde, bir veya daha fazla giriş öğesi tanımlayabilirsiniz. Birden çok tanım kullanıyorsanız, her tanımı hangi .NET nesnelerinin kullanabileceğini belirtmeniz gerekir. Genellikle her denetim için yalnızca bir tanım ile yalnızca bir giriş gereklidir.
<ListControl>
<ListEntries>
<ListEntry>
<EntrySelectedBy>...</EntrySelectedBy>
<ListItems>...</ListItems>
<ListEntry>
<ListEntry>
<EntrySelectedBy>...</EntrySelectedBy>
<ListItems>...</ListItems>
<ListEntry>
<ListEntry>
<EntrySelectedBy>...</EntrySelectedBy>
<ListItems>...</ListItems>
<ListEntry>
</ListEntries>
</ListControl>
Bir görünümün her giriş öğesinde, bu görünüm tarafından görüntülenen .NET özelliklerini veya betiklerini tanımlayan öğe öğelerini belirtirsiniz.
<ListItems>
<ListItem>...</ListItem>
<ListItem>...</ListItem>
<ListItem>...</ListItem>
</ListItems>
Yukarıdaki örneklerde gösterildiği gibi, biçimlendirme dosyası birden çok görünüm içerebilir, bir görünüm birden çok tanım içerebilir ve her tanım birden çok öğe içerebilir.
Tablo Görünümü Örneği
Aşağıdaki örnek, iki sütun içeren bir tablo görünümü tanımlamak için kullanılan XML etiketlerini gösterir. ViewDefinitions öğesi, biçimlendirme dosyasında tanımlanan tüm görünümler için kapsayıcı öğesidir. Görünüm öğesi belirli bir tabloyu, listeyi, geniş görünümü veya özel görünümü tanımlar. Her View öğesinde Name öğesi görünümün adını belirtir, ViewSelectedBy öğesi görünümü kullanan nesneleri tanımlar ve farklı denetim öğeleri (aşağıdaki örnekte gösterilen öğe TableControl
gibi) görünümün türünü tanımlar.
<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>