ListView.View ListView.View ListView.View ListView.View Property

Definition

Ruft ab, wie Elemente im Steuerelement angezeigt werden, oder legt dieses fest.Gets or sets how items are displayed in the control.

public:
 property System::Windows::Forms::View View { System::Windows::Forms::View get(); void set(System::Windows::Forms::View value); };
public System.Windows.Forms.View View { get; set; }
member this.View : System.Windows.Forms.View with get, set
Public Property View As View

Eigenschaftswert

Einer der View-Werte.One of the View values. Die Standardeinstellung ist LargeIcon.The default is LargeIcon.

Ausnahmen

Der angegebene Wert ist keiner der View-Werte.The value specified is not one of the View values.

Beispiele

Im folgenden Codebeispiel wird ein ListView -Steuerelement ListViewItem mit drei angegebenen- ListViewItem.ListViewSubItem Objekten und drei für jedes Element angegebene-Objekte erstellt.The following code example creates a ListView control with three ListViewItem objects specified and three ListViewItem.ListViewSubItem objects specified for each item. Im Beispiel werden auch ColumnHeader -Objekte erstellt, um die unter Elemente in der Detailansicht anzuzeigen.The example also creates ColumnHeader objects to display the subitems in details view. Im ImageList Codebeispiel werden auch zwei Objekte erstellt, um Bilder für die ListViewItem Objekte bereitzustellen.Two ImageList objects are also created in the code example to provide images for the ListViewItem objects. Diese ImageList Objekte werden der-Eigenschaft LargeImageList und SmallImageList der-Eigenschaft hinzugefügt.These ImageList objects are added to the LargeImageList and SmallImageList properties. In diesem Beispiel werden die folgenden Eigenschaften beim Erstellen ListView des-Steuer Elements verwendet.The example uses the following properties in creating the ListView control.

Dieses Beispiel erfordert, dass Sie den Code zu einem Form hinzugefügt und die im Beispiel erstellte Methode aus dem Konstruktor oder einer anderen Methode im Formular aufgerufen haben.This example requires that you have added the code to a Form and call the method created in the example from the constructor or another method on the form. Das Beispiel setzt auch voraus, dass MySmallImage1sich MySmallImage2die MyLargeImage1Images, MyLargeImage2 , und im Stammverzeichnis des Laufwerks C befinden.The example also requires that images named MySmallImage1, MySmallImage2, MyLargeImage1, and MyLargeImage2 are located in the root directory of drive C.

private:
   void CreateMyListView()
   {
      // Create a new ListView control.
      ListView^ listView1 = gcnew ListView;
      listView1->Bounds = Rectangle(Point(10,10),System::Drawing::Size( 300, 200 ));

      // Set the view to show details.
      listView1->View = View::Details;

      // Allow the user to edit item text.
      listView1->LabelEdit = true;

      // Allow the user to rearrange columns.
      listView1->AllowColumnReorder = true;

      // Display check boxes.
      listView1->CheckBoxes = true;

      // Select the item and subitems when selection is made.
      listView1->FullRowSelect = true;

      // Display grid lines.
      listView1->GridLines = true;

      // Sort the items in the list in ascending order.
      listView1->Sorting = SortOrder::Ascending;

      // Create three items and three sets of subitems for each item.
      ListViewItem^ item1 = gcnew ListViewItem( "item1",0 );

      // Place a check mark next to the item.
      item1->Checked = true;
      item1->SubItems->Add( "1" );
      item1->SubItems->Add( "2" );
      item1->SubItems->Add( "3" );
      ListViewItem^ item2 = gcnew ListViewItem( "item2",1 );
      item2->SubItems->Add( "4" );
      item2->SubItems->Add( "5" );
      item2->SubItems->Add( "6" );
      ListViewItem^ item3 = gcnew ListViewItem( "item3",0 );

      // Place a check mark next to the item.
      item3->Checked = true;
      item3->SubItems->Add( "7" );
      item3->SubItems->Add( "8" );
      item3->SubItems->Add( "9" );

      // Create columns for the items and subitems.
      // Width of -2 indicates auto-size.
      listView1->Columns->Add( "Item Column", -2, HorizontalAlignment::Left );
      listView1->Columns->Add( "Column 2", -2, HorizontalAlignment::Left );
      listView1->Columns->Add( "Column 3", -2, HorizontalAlignment::Left );
      listView1->Columns->Add( "Column 4", -2, HorizontalAlignment::Center );

      //Add the items to the ListView.
      array<ListViewItem^>^temp1 = {item1,item2,item3};
      listView1->Items->AddRange( temp1 );

      // Create two ImageList objects.
      ImageList^ imageListSmall = gcnew ImageList;
      ImageList^ imageListLarge = gcnew ImageList;

      // Initialize the ImageList objects with bitmaps.
      imageListSmall->Images->Add( Bitmap::FromFile( "C:\\MySmallImage1.bmp" ) );
      imageListSmall->Images->Add( Bitmap::FromFile( "C:\\MySmallImage2.bmp" ) );
      imageListLarge->Images->Add( Bitmap::FromFile( "C:\\MyLargeImage1.bmp" ) );
      imageListLarge->Images->Add( Bitmap::FromFile( "C:\\MyLargeImage2.bmp" ) );

      //Assign the ImageList objects to the ListView.
      listView1->LargeImageList = imageListLarge;
      listView1->SmallImageList = imageListSmall;
      
      // Add the ListView to the control collection.
      this->Controls->Add( listView1 );
   }
private void CreateMyListView()
{
	// Create a new ListView control.
	ListView listView1 = new ListView();
	listView1.Bounds = new Rectangle(new Point(10,10), new Size(300,200));

	// Set the view to show details.
	listView1.View = View.Details;
	// Allow the user to edit item text.
	listView1.LabelEdit = true;
	// Allow the user to rearrange columns.
	listView1.AllowColumnReorder = true;
	// Display check boxes.
	listView1.CheckBoxes = true;
	// Select the item and subitems when selection is made.
	listView1.FullRowSelect = true;
	// Display grid lines.
	listView1.GridLines = true;
	// Sort the items in the list in ascending order.
	listView1.Sorting = SortOrder.Ascending;
          			
	// Create three items and three sets of subitems for each item.
	ListViewItem item1 = new ListViewItem("item1",0);
	// Place a check mark next to the item.
	item1.Checked = true;
	item1.SubItems.Add("1");
	item1.SubItems.Add("2");
	item1.SubItems.Add("3");
	ListViewItem item2 = new ListViewItem("item2",1);
	item2.SubItems.Add("4");
	item2.SubItems.Add("5");
	item2.SubItems.Add("6");
	ListViewItem item3 = new ListViewItem("item3",0);
	// Place a check mark next to the item.
	item3.Checked = true;
	item3.SubItems.Add("7");
	item3.SubItems.Add("8");
	item3.SubItems.Add("9");

	// Create columns for the items and subitems.
	// Width of -2 indicates auto-size.
	listView1.Columns.Add("Item Column", -2, HorizontalAlignment.Left);
	listView1.Columns.Add("Column 2", -2, HorizontalAlignment.Left);
	listView1.Columns.Add("Column 3", -2, HorizontalAlignment.Left);
	listView1.Columns.Add("Column 4", -2, HorizontalAlignment.Center);

	//Add the items to the ListView.
	listView1.Items.AddRange(new ListViewItem[]{item1,item2,item3});

	// Create two ImageList objects.
	ImageList imageListSmall = new ImageList();
	ImageList imageListLarge = new ImageList();

	// Initialize the ImageList objects with bitmaps.
	imageListSmall.Images.Add(Bitmap.FromFile("C:\\MySmallImage1.bmp"));
	imageListSmall.Images.Add(Bitmap.FromFile("C:\\MySmallImage2.bmp"));
	imageListLarge.Images.Add(Bitmap.FromFile("C:\\MyLargeImage1.bmp"));
	imageListLarge.Images.Add(Bitmap.FromFile("C:\\MyLargeImage2.bmp"));

	//Assign the ImageList objects to the ListView.
	listView1.LargeImageList = imageListLarge;
	listView1.SmallImageList = imageListSmall;

	// Add the ListView to the control collection.
	this.Controls.Add(listView1);
}
Private Sub CreateMyListView()
    ' Create a new ListView control.
    Dim listView1 As New ListView()
    listView1.Bounds = New Rectangle(New Point(10, 10), New Size(300, 200))

    ' Set the view to show details.
    listView1.View = View.Details
    ' Allow the user to edit item text.
    listView1.LabelEdit = True
    ' Allow the user to rearrange columns.
    listView1.AllowColumnReorder = True
    ' Display check boxes.
    listView1.CheckBoxes = True
    ' Select the item and subitems when selection is made.
    listView1.FullRowSelect = True
    ' Display grid lines.
    listView1.GridLines = True
    ' Sort the items in the list in ascending order.
    listView1.Sorting = SortOrder.Ascending

    ' Create three items and three sets of subitems for each item.
    Dim item1 As New ListViewItem("item1", 0)
    ' Place a check mark next to the item.
    item1.Checked = True
    item1.SubItems.Add("1")
    item1.SubItems.Add("2")
    item1.SubItems.Add("3")
    Dim item2 As New ListViewItem("item2", 1)
    item2.SubItems.Add("4")
    item2.SubItems.Add("5")
    item2.SubItems.Add("6")
    Dim item3 As New ListViewItem("item3", 0)
    ' Place a check mark next to the item.
    item3.Checked = True
    item3.SubItems.Add("7")
    item3.SubItems.Add("8")
    item3.SubItems.Add("9")

    ' Create columns for the items and subitems.
    ' Width of -2 indicates auto-size.
    listView1.Columns.Add("Item Column", -2, HorizontalAlignment.Left)
    listView1.Columns.Add("Column 2", -2, HorizontalAlignment.Left)
    listView1.Columns.Add("Column 3", -2, HorizontalAlignment.Left)
    listView1.Columns.Add("Column 4", -2, HorizontalAlignment.Center)

    'Add the items to the ListView.
    listView1.Items.AddRange(New ListViewItem() {item1, item2, item3})

    ' Create two ImageList objects.
    Dim imageListSmall As New ImageList()
    Dim imageListLarge As New ImageList()

    ' Initialize the ImageList objects with bitmaps.
    imageListSmall.Images.Add(Bitmap.FromFile("C:\MySmallImage1.bmp"))
    imageListSmall.Images.Add(Bitmap.FromFile("C:\MySmallImage2.bmp"))
    imageListLarge.Images.Add(Bitmap.FromFile("C:\MyLargeImage1.bmp"))
    imageListLarge.Images.Add(Bitmap.FromFile("C:\MyLargeImage2.bmp"))

    'Assign the ImageList objects to the ListView.
    listView1.LargeImageList = imageListLarge
    listView1.SmallImageList = imageListSmall

    ' Add the ListView to the control collection.
    Me.Controls.Add(listView1)
End Sub

Hinweise

Die View -Eigenschaft ermöglicht es Ihnen, den Typ der Anzeige ListView anzugeben, die das-Steuerelement zum Anzeigen von Elementen verwendet.The View property allows you to specify the type of display the ListView control uses to display items. Sie können die View -Eigenschaft festlegen, um jedes Element mit großen oder kleinen Symbolen anzuzeigen oder Elemente in einer vertikalen Liste anzuzeigen.You can set the View property to display each item with large or small icons or display items in a vertical list. Die reichste Option ist die Detailansicht, mit der Sie nicht nur die Elemente, sondern alle unter Elemente anzeigen können, die für jedes Element angegeben wurden.The richest option is the details view, which allows you to view not only the items but any subitems specified for each item. Jedes Element wird in einem Raster angezeigt, wobei jedes Element vertikal aufgeführt ist, und die unter Elemente für jedes Element, das in einer Spalte angezeigt wird, mit Spaltenüberschriften.Each item is displayed in a grid, with each item listed vertically and the subitems for each item displayed in a column, with column headers. Die Detailansicht ist eine perfekte Möglichkeit zum Anzeigen von Datenbankinformationen für einen Benutzer.The details view is a perfect way to display database information to a user. Mit Windows XP und Windows Server 2003 können Sie Elemente auch als Kacheln anzeigen, die grafische und Textinformationen ausgleichen, indem Sie ein großes Symbol zusammen mit den untergeordneten Informationen Ihrer Wahl anzeigen.With Windows XP and Windows Server 2003, you can also display items as tiles that balance graphical and textual information by showing a large icon along with subitem information of your choosing. Um die Kachel Ansicht zu aktivieren, muss die Anwendung Application.EnableVisualStyles die-Methode aufruft.To enable tile view, your application must call the Application.EnableVisualStyles method. In der Ansicht mit kleinen Bildern werden alle Elemente mit einem Symbol und Textinformationen rechts neben dem Symbol angezeigt.The small-image view displays each item with an icon and textual information to the right of the icon. In der Ansicht für große Bilder werden alle Elemente mit einem Symbol und Textinformationen unterhalb des Symbols angezeigt.The large-image view displays each item with an icon and textual information below the icon. Die Größe der Symbole ImageSize für die Bildliste wird von der-Eigenschaft ImageList der-Eigenschaft für die SmallImageList - LargeImageList Eigenschaft oder die-Eigenschaft angegeben.The size of the icons for the image list is specified by the ImageSize property of the ImageList for the SmallImageList or LargeImageList properties.

Hinweis

Wenn Sie mehrere Bildlisten verwenden, sollten Sie bei einer kleinen und großen Symbol Ansicht mit ListView einem-Steuerelement kleine und große Versionen des Bilds an derselben Indexposition in den jeweiligen Bildlisten platzieren.If you are using multiple image lists, for small and large icon view, with a ListView control, you should place small and large versions of the image at the same index location in their respective image lists. Beim Wechseln zwischen Sichten wird die Indexposition des Bilds in einer Liste verwendet, um das Bild in der anderen Liste zu finden, unabhängig vom angegebenen Schlüsselwert.When switching between views, the index location of the image in one list is used to locate the image in the other list, regardless of the key value specified.

Die meisten Eigenschaften im ListView Steuerelement beeinflussen, wie sich die verschiedenen Sichten Verhalten oder angezeigt werden.Most of the properties in the ListView control affect how the different views behave or are displayed. Einige Eigenschaften, die sich auf die Sichten der Elemente auswirken, sind nur View nützlich, wenn die-Eigenschaft auf einen bestimmten Wert festgelegt ist, während andere in allen Ansichten nützlich sind.Some properties that affect the views of the items are only useful when the View property is set to a specific value, while others are useful in all views. Beispielsweise sind Eigenschaften wie GridLines und FullRowSelect nur nützlich, wenn die View -Eigenschaft auf View.Detailsfestgelegt ist, während MultiSelect die CheckBoxes -Eigenschaft und die-Eigenschaft in allen Ansichten nützlich sind.For example, properties such as GridLines and FullRowSelect are only useful when the View property is set to View.Details, while the MultiSelect and CheckBoxes properties are useful in all views.

In der folgenden Tabelle sind einige ListView der Member und Sichten aufgeführt, in denen Sie gültig sind.The following table shows some of the ListView members and the views they are valid in.

ListView-MemberListView member AnsichtView
Alignment -EigenschaftAlignment property SmallIcon oder LargeIconSmallIcon or LargeIcon
AutoArrange -EigenschaftAutoArrange property SmallIcon oder LargeIconSmallIcon or LargeIcon
AutoResizeColumn-MethodeAutoResizeColumn method Details
CheckBoxes Alle Sichten außerTileAll views except Tile
Columns -EigenschaftColumns property Details oder TileDetails or Tile
DrawSubItem -EreignisDrawSubItem event Details
FindItemWithText-MethodeFindItemWithText method Details, Listoder TileDetails, List, or Tile
FindNearestItem-MethodeFindNearestItem method SmallIcon oder LargeIconSmallIcon or LargeIcon
GetItemAt-MethodeGetItemAt method Details oder TileDetails or Tile
Groups -EigenschaftGroups property Alle Sichten außerListAll views except List
HeaderStyle -EigenschaftHeaderStyle property Details
InsertionMark -EigenschaftInsertionMark property LargeIcon, SmallIconoder TileLargeIcon, SmallIcon, or Tile

Mit der View -Eigenschaft können Sie unterschiedliche Ansichten der Daten in der Anwendung bereitstellen oder eine bestimmte Ansicht sperren, um die Vorteile dieser Ansicht zu nutzen.You can use the View property to provide different views of data in your application, or to lock a specific view to utilize that view's benefits. Beispielsweise ist die View -Eigenschaft häufig auf View.Details festgelegt, da die Detailansicht eine Reihe von Anzeigeoptionen enthält, die in den anderen Ansichten nicht verfügbar sind.For example, the View property is often set to View.Details because the details view provides a number of viewing options not available in the other views.

Hinweis

Wenn für das View View.Details ListView Steuerelement keine Spaltenüberschriften angegeben sind und Sie die-Eigenschaft auf festlegen, werden vom-Steuerelement keine Elemente angezeigt. ListViewIf your ListView control does not have any column headers specified and you set the View property to View.Details, the ListView control will not display any items. Wenn für das View View.Tile ListView Steuerelement keine Spaltenüberschriften angegeben sind und Sie die-Eigenschaft auf festlegen, zeigt das Steuerelement keine unter Elemente an. ListViewIf your ListView control does not have any column headers specified and you set the View property to View.Tile, the ListView control will not display any subitems.

Die Kachel Ansicht zeigt alle Elemente mit einem großen Symbol auf der linken Seite und die Textinformationen auf der rechten Seite an.The tile view displays each item with a large icon on the left and textual information on the right. Die Textinformationen bestehen aus der Element Bezeichnung, gefolgt von unter Elementen.The textual information consists of the item label followed by subitems. Standardmäßig wird nur das erste Unterelement angezeigt, das der Element Bezeichnung entspricht.By default, only the first subitem is displayed, which corresponds to the item label. Um zusätzliche unter Elemente anzuzeigen, müssen Sie der ColumnHeader Columns Auflistung Objekte hinzufügen.To display additional subitems, you must add ColumnHeader objects to the Columns collection. Jedes Unterelement in der Kachel entspricht einem Spaltenheader.Each subitem in the tile corresponds to a column header. Um zu steuern, welche unter Elemente angezeigt werden und in welcher Reihenfolge Sie angezeigt werden, müssen Sie die ListViewItem.ListViewSubItem.Name -Eigenschaft für jedes Element und die ColumnHeader.Name -Eigenschaft für jeden Header festlegen.To control which subitems are displayed and the order in which they are displayed, you must set the ListViewItem.ListViewSubItem.Name property for each item and the ColumnHeader.Name property for each header. Anschließend können Sie die Header in der Columns Auflistung hinzufügen, entfernen und neu anordnen, um das gewünschte Ergebnis zu erzielen.You can then add, remove, and rearrange headers in the Columns collection to achieve the desired result.

Um die Größe der Kacheln in der Kachel Ansicht zu steuern, legen TileSize Sie die-Eigenschaft fest.To control the size of the tiles in the tile view, set the TileSize property. Dies ist hilfreich, um Zeilenumbrüchen zu verhindern, wenn der untergeordnete Text für eine einzelne Zeile zu lang ist.This is useful to prevent line-wrapping when subitem text is too long for a single line.

Ein Beispiel für die Kachel Ansicht finden Sie unter der TileSize -Eigenschaft.For an example of the tile view, see the TileSize property.

Hinweis

Obwohl Spalten nur in der Detailansicht angezeigt werden, werden unter Elemente ohne Spaltenüberschriften weder in der Detailansicht noch in der Kachel Ansicht angezeigt.Although columns are only displayed in the details view, subitems without column headers will not display in either the details view or the tile view.

Die Kachel Ansicht ist nur unter Windows XP und Windows Server 2003 verfügbar, wenn die Anwendung die Application.EnableVisualStyles -Methode aufruft.The tile view is available only on Windows XP and Windows Server 2003 when your application calls the Application.EnableVisualStyles method. Unter älteren Betriebssystemen hat Code in Bezug auf die Ansicht "Nebeneinander" keine Auswirkungen, und das ListView-Steuerelement wird in der Ansicht "Große Symbole" angezeigt.On earlier operating systems, any code related to the tile view has no effect, and the ListView control displays in the large icon view. Der Code, der von der Kachel Ansicht abhängt, funktioniert daher möglicherweise nicht ordnungsgemäß.As a result, any code that depends on the tile view might not work correctly.

Möglicherweise möchten Sie Code einschließen, der bestimmt, ob die Kachel Ansicht verfügbar ist, und alternative Funktionen bereitstellen, wenn Sie nicht verfügbar sind.You might want to include code that determines whether tile view is available, and provide alternate functionality when it is unavailable. Wenn Sie z. b. die Darstellung von ListView Elementen in der Kachel Ansicht mithilfe der Besitzer Zeichnung anpassen, empfiehlt es sich, den Zeichencode zu verwenden, der für die große Symbol Ansicht geeignet ist, wenn er auf Betriebssystemen ausgeführt wird, die die Kachel Ansicht nicht unterstützen.For example, when you use owner drawing to customize the appearance of ListView items in the tile view, you might want to use drawing code appropriate to the large icon view when running on operating systems that do not support the tile view.

Die Kachel Ansicht wird von derselben Bibliothek bereitgestellt, in der das Feature "Betriebssystem Designs" bereitgestellt wird.The tile view feature is provided by the same library that provides the operating system themes feature. Um die Verfügbarkeit dieser Bibliothek zu überprüfen, müssen FeatureSupport.IsPresent(Object) Sie die-Methoden Überladung OSFeature.Themes aufrufen und den-Wert übergeben.To check for the availability of this library, call the FeatureSupport.IsPresent(Object) method overload and pass in the OSFeature.Themes value.

Gilt für:

Siehe auch