Tworzenie widoku szerokiegoCreating a Wide View

Widok szeroki Wyświetla pojedynczą wartość dla każdego wyświetlonego obiektu.A wide view displays a single value for each object that is displayed. Wyświetlana wartość może być wartością właściwości obiektu platformy .NET lub z wartością skryptu.The displayed value can be the value of a .NET object property or the value of a script. Domyślnie nie ma etykiety ani nagłówka dla tego widoku.By default, there is no label or header for this view.

Wyświetlanie widoku szerokiegoA Wide View Display

Poniższy przykład pokazuje, jak program Windows PowerShell wyświetla obiekt System. Diagnostics. Process , który jest zwracany przez polecenie cmdlet Get-Process , gdy jego dane wyjściowe są przekazywane do polecenia cmdlet w całym formacie .The following example shows how Windows PowerShell displays the System.Diagnostics.Process object that is returned by the Get-Process cmdlet when its output is piped to the Format-Wide cmdlet. (Domyślnie polecenie cmdlet Get-Process zwraca widok tabeli). W tym przykładzie dwie kolumny są używane do wyświetlania nazwy procesu dla każdego zwróconego obiektu.(By default, the Get-Process cmdlet returns a table view.) In this example, the two columns are used to display the name of the process for each returned object. Nazwa właściwości obiektu nie jest wyświetlana, tylko wartość właściwości.The name of the object's property is not displayed, only the value of the property.

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

Definiowanie widoku szerokiegoDefining the Wide View

Poniższy kod XML pokazuje Schemat widoku szeroki dla obiektu System. Diagnostics. Process .The following XML shows the wide view schema for the System.Diagnostics.Process object.

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>

Następujące elementy XML są używane do definiowania widoku szerokiego:The following XML elements are used to define a wide view:

  • Element widoku jest elementem nadrzędnym widoku szeroki.The View element is the parent element of the wide view. (Jest to ten sam element nadrzędny dla widoków tabela, lista i formant niestandardowy).(This is the same parent element for the table, list, and custom control views.)

  • Nazwa element określa nazwę widoku.The Name element specifies the name of the view. Ten element jest wymagany dla wszystkich widoków.This element is required for all views.

  • Element ViewSelectedBy definiuje obiekty, które używają widoku.The ViewSelectedBy element defines the objects that use the view. Ten element jest wymagany.This element is required.

  • Element GroupBy definiuje, kiedy zostanie wyświetlona nowa grupa obiektów.The GroupBy element defines when a new group of objects is displayed. Nowa grupa jest uruchamiana za każdym razem, gdy wartość określonej właściwości lub skryptu zostanie zmieniona.A new group is started whenever the value of a specific property or script changes. Ten element jest opcjonalny.This element is optional.

  • Elementy Controls definiują niestandardowe kontrolki, które są zdefiniowane przez szeroki widok.The Controls elements defines the custom controls that are defined by the wide view. Kontrolki umożliwiają dokładniejsze określenie sposobu wyświetlania danych.Controls give you a way to further specify how the data is displayed. Ten element jest opcjonalny.This element is optional. Widok może definiować własne kontrolki niestandardowe lub mogą używać typowych kontrolek, które mogą być używane przez dowolny widok w pliku formatowania.A view can define its own custom controls, or it can use common controls that can be used by any view in the formatting file. Aby uzyskać więcej informacji o kontrolkach niestandardowych, zobacz Tworzenie niestandardowych kontrolek.For more information about custom controls, see Creating Custom Controls.

  • Element WideControl i jego elementy podrzędne definiują elementy wyświetlane w widoku.The WideControl element and its child elements define what is displayed in the view. W poprzednim przykładzie widok jest przeznaczony do wyświetlania właściwości System. Diagnostics. Process. ProcessName .In the preceding example, the view is designed to display the System.Diagnostics.Process.Processname property.

Przykład pełnego pliku formatowania, który definiuje prosty widok szeroki, zawiera Widok szeroki (podstawowy).For an example of a complete formatting file that defines a simple wide view, see Wide View (Basic).

Udostępnianie definicji dla szerokiego widokuProviding Definitions for Your Wide View

Szerokie widoki mogą zapewnić jedną lub więcej definicji za pomocą elementów podrzędnych elementu WideControl .Wide views can provide one or more definitions by using the child elements of the WideControl element. Zazwyczaj widok będzie miał tylko jedną definicję.Typically, a view will have only one definition. W poniższym przykładzie widok zawiera pojedynczą definicję, która wyświetla wartość właściwości System. Diagnostics. Process. ProcessName .In the following example, the view provides a single definition that displays the value of the System.Diagnostics.Process.Processname property. W widoku szerokim można wyświetlić wartość właściwości lub wartość skryptu (nie pokazano w przykładzie).A wide view can display the value of a property or the value of a script (not shown in the example).

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

Następujące elementy XML mogą służyć do udostępniania definicji dla szerokiego widoku:The following XML elements can be used to provide definitions for a wide view:

  • Element WideControl i jego elementy podrzędne definiują elementy wyświetlane w widoku.The WideControl element and its child elements define what is displayed in the view.

  • Element AutoSize określa, czy rozmiar kolumny i liczbę kolumn są dostosowywane na podstawie rozmiaru danych.The AutoSize element specifies whether the column size and the number of columns are adjusted based on the size of the data. Ten element jest opcjonalny.This element is optional.

  • Element ColumnNumber określa liczbę kolumn wyświetlanych w widoku szerokim.The ColumnNumber element specifies the number of columns displayed in the wide view. Ten element jest opcjonalny.This element is optional.

  • Element WideEntries zawiera definicje widoku.The WideEntries element provides the definitions of the view. W większości przypadków widok będzie miał tylko jedną definicję.In most cases, a view will have only one definition. Ten element jest wymagany.This element is required.

  • Element WideEntry zawiera definicję widoku.The WideEntry element provides a definition of the view. Wymagany jest co najmniej jeden WideEntry ; nie ma jednak maksymalnego limitu liczby elementów, które można dodać.At least one WideEntry is required; however, there is no maximum limit to the number of elements that you can add. W większości przypadków widok będzie miał tylko jedną definicję.In most cases, a view will have only one definition.

  • Element EntrySelectedBy określa obiekty, które są wyświetlane w określonej definicji.The EntrySelectedBy element specifies the objects that are displayed by a specific definition. Ten element jest opcjonalny i jest niezbędny tylko w przypadku zdefiniowania wielu elementów WideEntry , które wyświetlają różne obiekty.This element is optional and is needed only when you define multiple WideEntry elements that display different objects.

  • Element WideItem określa dane, które są wyświetlane w widoku.The WideItem element specifies the data that is displayed by the view. W przeciwieństwie do innych typów widoków, szeroki formant może wyświetlać tylko jeden element.In contrast to other types of views, a wide control can display only one item.

  • Element PropertyName określa właściwość, której wartość jest wyświetlana w widoku.The PropertyName element specifies the property whose value is displayed by the view. Należy określić właściwość lub skrypt, ale nie można określić obu tych wartości.You must specify either a property or a script, but you cannot specify both.

  • Element ScriptBlock określa skrypt, którego wartość jest wyświetlana w widoku.The ScriptBlock element specifies the script whose value is displayed by the view. Należy określić skrypt lub właściwość, ale nie można określić obu tych wartości.You must specify either a script or a property, but you cannot specify both.

  • Element FormatString określa wzorzec, który jest używany do wyświetlania danych.The FormatString element specifies a pattern that is used to display the data. Ten element jest opcjonalny.This element is optional.

Aby zapoznać się z przykładem kompletnego pliku formatowania, który definiuje definicję widoku szerokiego, zobacz Widok szeroki (podstawowy).For an example of a complete formatting file that defines a wide view definition, see Wide View (Basic).

Definiowanie obiektów, które używają widoku szerokiegoDefining the Objects That Use the Wide View

Istnieją dwa sposoby definiowania, które obiekty .NET używają szerokiego widoku.There are two ways to define which .NET objects use the wide view. Można użyć elementu ViewSelectedBy , aby zdefiniować obiekty, które mogą być wyświetlane przez wszystkie definicje widoku, lub użyć elementu EntrySelectedBy , aby określić, które obiekty są wyświetlane przez określoną definicję widoku.You can use the ViewSelectedBy element to define the objects that can be displayed by all the definitions of the view, or you can use the EntrySelectedBy element to define which objects are displayed by a specific definition of the view. W większości przypadków widok ma tylko jedną definicję, dlatego obiekty są zwykle definiowane przez element ViewSelectedBy .In most cases, a view has only one definition, so objects are typically defined by the ViewSelectedBy element.

Poniższy przykład pokazuje, jak definiować obiekty, które są wyświetlane w widoku szerokim przy użyciu elementów ViewSelectedBy i TypeName .The following example shows how to define the objects that are displayed by the wide view using the ViewSelectedBy and TypeName elements. Nie ma żadnego limitu liczby elementów TypeName , które można określić, a ich kolejność nie jest istotna.There is no limit to the number of TypeName elements that you can specify, and their order is not significant.

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

Następujące elementy XML mogą służyć do określania obiektów, które są używane przez widok szeroki:The following XML elements can be used to specify the objects that are used by the wide view:

  • Element ViewSelectedBy definiuje, które obiekty są wyświetlane w widoku szerokim.The ViewSelectedBy element defines which objects are displayed by the wide view.

  • Element TypeName określa .NET, który jest wyświetlany w widoku.The TypeName element specifies the .NET that is displayed by the view. Wymagana jest w pełni kwalifikowana nazwa typu .NET.The fully qualified .NET type name is required. Należy określić co najmniej jeden typ lub zestaw wyboru dla widoku, ale nie ma maksymalnej liczby elementów, które można określić.You must specify at least one type or selection set for the view, but there is no maximum number of elements that can be specified.

Aby zapoznać się z przykładem kompletnego pliku formatowania, zobacz Wide View (Basic).For an example of a complete formatting file, see Wide View (Basic).

W poniższym przykładzie są wykorzystywane elementy ViewSelectedBy i SelectionSetName .The following example uses the ViewSelectedBy and SelectionSetName elements. Użyj zestawów wyboru, w których istnieje powiązany zestaw obiektów, które są wyświetlane w wielu widokach, na przykład podczas definiowania widoku szerokiego i widoku tabeli dla tych samych obiektów.Use selection sets where you have a related set of objects that are displayed using multiple views, such as when you define a wide view and a table view for the same objects. Aby uzyskać więcej informacji na temat tworzenia zestawu wyboru, zobacz Definiowanie zestawów wyboru.For more information about how to create a selection set, see Defining Selection Sets.

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

Następujące elementy XML mogą służyć do określania obiektów, które są używane przez widok szeroki:The following XML elements can be used to specify the objects that are used by the wide view:

  • Element ViewSelectedBy definiuje, które obiekty są wyświetlane w widoku szerokim.The ViewSelectedBy element defines which objects are displayed by the wide view.

  • Element SelectionSetName określa zestaw obiektów, które mogą być wyświetlane w widoku.The SelectionSetName element specifies a set of objects that can be displayed by the view. Należy określić co najmniej jeden zestaw wyboru lub typ dla widoku, ale nie ma maksymalnej liczby elementów, które można określić.You must specify at least one selection set or type for the view, but there is no maximum number of elements that can be specified.

Poniższy przykład pokazuje, jak definiować obiekty wyświetlane przez określoną definicję widoku szerokiego przy użyciu elementu EntrySelectedBy .The following example shows how to define the objects displayed by a specific definition of the wide view using the EntrySelectedBy element. Za pomocą tego elementu można określić nazwę typu .NET obiektu, zestaw wyboru obiektów lub warunek wyboru, który określa, kiedy definicja jest używana.Using this element, you can specify the .NET type name of the object, a selection set of objects, or a selection condition that specifies when the definition is used. Aby uzyskać więcej informacji na temat tworzenia warunków wyboru, zobacz Definiowanie warunków wyświetlania danych.For more information about how to create a selection conditions, see Defining Conditions for Displaying Data.

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

Następujące elementy XML mogą służyć do określania obiektów, które są używane przez określoną definicję widoku szerokiego:The following XML elements can be used to specify the objects that are used by a specific definition of the wide view:

  • Element EntrySelectedBy definiuje, które obiekty są wyświetlane przez definicję.The EntrySelectedBy element defines which objects are displayed by the definition.

  • Element TypeName określa .NET, który jest wyświetlany przez definicję.The TypeName element specifies the .NET that is displayed by the definition. W przypadku korzystania z tego elementu wymagana jest w pełni kwalifikowana nazwa typu .NET.When using this element the fully qualified .NET type name is required. Należy określić co najmniej jeden typ, zestaw wyboru lub warunek wyboru dla definicji, ale nie ma maksymalnej liczby elementów, które można określić.You must specify at least one type, selection set, or selection condition for the definition, but there is no maximum number of elements that can be specified.

  • Element SelectionSetName (niepokazywany) określa zestaw obiektów, które mogą być wyświetlane w tej definicji.The SelectionSetName element (not shown) specifies a set of objects that can be displayed by this definition. Należy określić co najmniej jeden typ, zestaw wyboru lub warunek wyboru dla definicji, ale nie ma maksymalnej liczby elementów, które można określić.You must specify at least one type, selection set, or selection condition for the definition, but there is no maximum number of elements that can be specified.

  • Element SelectionCondition (niepokazywany) określa warunek, który musi istnieć, aby można było użyć tej definicji.The SelectionCondition element (not shown) specifies a condition that must exist for this definition to be used. Należy określić co najmniej jeden typ, zestaw wyboru lub warunek wyboru dla definicji, ale nie ma maksymalnej liczby elementów, które można określić.You must specify at least one type, selection set, or selection condition for the definition, but there is no maximum number of elements that can be specified. Aby uzyskać więcej informacji o definiowaniu warunków wyboru, zobacz Definiowanie warunków wyświetlania danych.For more information about defining selection conditions, see Defining Conditions for Displaying Data.

Wyświetlanie grup obiektów w widoku szerokimDisplaying Groups of objects in a Wide View

Możesz oddzielić obiekty, które są wyświetlane w widoku szerokim do grup.You can separate the objects that are displayed by the wide view into groups. Nie oznacza to, że definiujesz grupę, tylko gdy program Windows PowerShell uruchamia nową grupę przy każdej zmianie wartości konkretnej właściwości lub skryptu.This does not mean that you define a group, only that Windows PowerShell starts a new group whenever the value of a specific property or script changes. W poniższym przykładzie Nowa grupa jest uruchamiana za każdym razem, gdy wartość właściwości System. ServiceProcess. ServiceController. Service nie zostanie zmieniona.In the following example, a new group is started whenever the value of the System.Serviceprocess.Servicecontroller.Servicetype property changes.

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

Następujące elementy XML są używane do definiowania momentu rozpoczęcia grupy:The following XML elements are used to define when a group is started:

  • Element GroupBy definiuje właściwość lub skrypt, który uruchamia nową grupę i definiuje sposób wyświetlania grupy.The GroupBy element defines the property or script that starts the new group and defines how the group is displayed.

  • Element PropertyName określa właściwość, która uruchamia nową grupę przy każdej zmianie wartości.The PropertyName element specifies the property that starts a new group whenever its value changes. Należy określić właściwość lub skrypt, aby uruchomić grupę, ale nie można określić obu tych wartości.You must specify a property or script to start the group, but you cannot specify both.

  • ScriptBlock element określa skrypt, który uruchamia nową grupę przy każdej zmianie wartości.The ScriptBlock element specifies the script that starts a new group whenever its value changes. Należy określić skrypt lub właściwość, aby uruchomić grupę, ale nie można określić obu tych wartości.You must specify a script or property to start the group, but you cannot specify both.

  • Element Label definiuje etykietę, która jest wyświetlana na początku każdej grupy.The Label element defines a label that is displayed at the beginning of each group. Oprócz tekstu określonego przez ten element program Windows PowerShell wyświetla wartość wyzwalającą nową grupę i dodaje pusty wiersz przed i po etykiecie.In addition to the text specified by this element, Windows PowerShell displays the value that triggered the new group and adds a blank line before and after the label. Ten element jest opcjonalny.This element is optional.

  • Element obiektu CustomControl definiuje formant, który jest używany do wyświetlania danych.The CustomControl element defines a control that is used to display the data. Ten element jest opcjonalny.This element is optional.

  • Element CustomControlName określa wspólny formant lub widok, który jest używany do wyświetlania danych.The CustomControlName element specifies a common or view control that is used to display the data. Ten element jest opcjonalny.This element is optional.

Aby zapoznać się z przykładem kompletnego pliku formatowania, który definiuje grupy, zobacz Wide View (GroupBy).For an example of a complete formatting file that defines groups, see Wide View (GroupBy).

Używanie ciągów formatuUsing Format Strings

Ciągi formatowania można dodać do widoku szerokiego, aby bardziej zdefiniować sposób wyświetlania danych.Formatting strings can be added to a wide view to further define how the data is displayed. Poniższy przykład pokazuje, jak zdefiniować ciąg formatowania dla wartości StartTime właściwości.The following example shows how to define a formatting string for the value of the StartTime property.

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

Następujące elementy XML mogą służyć do określenia wzorca formatu:The following XML elements can be used to specify a format pattern:

  • Element WideItem określa dane, które są wyświetlane w widoku.The WideItem element specifies the data that is displayed by the view.

  • Element PropertyName określa właściwość, której wartość jest wyświetlana w widoku.The PropertyName element specifies the property whose value is displayed by the view. Należy określić właściwość lub skrypt, ale nie można określić obu tych wartości.You must specify either a property or a script, but you cannot specify both.

  • Element FormatString określa wzorzec formatu, który definiuje sposób wyświetlania wartości właściwości lub skryptu w widoku.The FormatString element specifies a format pattern that defines how the property or script value is displayed in the view

  • Element ScriptBlock (niepokazywany) określa skrypt, którego wartość jest wyświetlana w widoku.The ScriptBlock element (not shown) specifies the script whose value is displayed by the view. Należy określić skrypt lub właściwość, ale nie można określić obu tych wartości.You must specify either a script or a property, but you cannot specify both.

W poniższym przykładzie ToString Metoda jest wywoływana w celu sformatowania wartości skryptu.In the following example, the ToString method is called to format the value of the script. Skrypty mogą wywołać dowolną metodę obiektu.Scripts can call any method of an object. W związku z tym, jeśli obiekt ma metodę, taką jak ToString , która ma parametry formatowania, skrypt może wywołać tę metodę, aby sformatować wartość wyjściową skryptu.Therefore, if an object has a method, such as ToString, that has formatting parameters, the script can call that method to format the output value of the script.

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

Następujący element XML może służyć do wywoływania ToString metody:The following XML element can be used to calling the ToString method:

  • Element WideItem określa dane, które są wyświetlane w widoku.The WideItem element specifies the data that is displayed by the view.

  • Element ScriptBlock (niepokazywany) określa skrypt, którego wartość jest wyświetlana w widoku.The ScriptBlock element (not shown) specifies the script whose value is displayed by the view. Należy określić skrypt lub właściwość, ale nie można określić obu tych wartości.You must specify either a script or a property, but you cannot specify both.

Zobacz teżSee Also

Widok szeroki (podstawowy)Wide View (Basic)

Widok szeroki (GroupBy)Wide View (GroupBy)

Pisanie pliku formatującego programu PowerShellWriting a PowerShell Formatting File