Freigeben über


ListView.View-Eigenschaft

Ruft ab, wie Elemente im Steuerelement angezeigt werden, oder legt dieses fest.

Namespace: System.Windows.Forms
Assembly: System.Windows.Forms (in system.windows.forms.dll)

Syntax

'Declaration
Public Property View As View
'Usage
Dim instance As ListView
Dim value As View

value = instance.View

instance.View = value
public View View { get; set; }
public:
property View View {
    View get ();
    void set (View value);
}
/** @property */
public View get_View ()

/** @property */
public void set_View (View value)
public function get View () : View

public function set View (value : View)

Eigenschaftenwert

Ein View-Wert. Der Standardwert ist LargeIcon.

Ausnahmen

Ausnahmetyp Bedingung

InvalidEnumArgumentException

Der angegebene Wert ist kein View-Wert.

Hinweise

Mit der View-Eigenschaft können Sie die Art der Anzeige bestimmen, mit der das ListView-Steuerelement Elemente anzeigt. Sie können die View-Eigenschaft so festlegen, dass die einzelnen Elemente mit großen oder kleinen Symbolen oder in einer vertikalen Liste angezeigt werden. Die ausführlichste Option ist die Detailansicht, in der nicht nur die Elemente selbst, sondern auch alle ihre Unterelemente angezeigt werden. Jedes Element wird in einem Datenblatt angezeigt, wobei die einzelnen Elemente vertikal aufgelistet und die Unterelemente der einzelnen Elemente in einer Spalte mit Spaltenköpfen angezeigt werden. Die Detailansicht empfiehlt sich besonders zum Anzeigen von Datenbankinformationen für Benutzer. Unter Windows XP und Windows Server 2003 können Elemente auch als nebeneinander angeordnete Fenster angezeigt werden. Hierbei sind Bild- und Textinformationen zu gleichen Teilen vorhanden, wobei nach Ihrer Wahl ein großes Symbol zusammen mit Informationen zu den Unterelementen angezeigt wird. Um die Kachelansicht zu aktivieren, muss die Anwendung die Application.EnableVisualStyles-Methode aufrufen. In der Miniaturansicht wird jedes Element mit einem Symbol sowie Textinformationen auf der rechten Seite des Symbols angezeigt. In der Symbolansicht wird jedes Element mit einem Symbol sowie Textinformationen unter dem Symbol angezeigt. Die Größe der Symbole für die Bildliste wird durch die ImageSize-Eigenschaft der ImageList für die SmallImageList-Eigenschaft oder die LargeImageList-Eigenschaft angegeben.

Die meisten der Eigenschaften im ListView-Steuerelement beeinflussen das Verhalten bzw. die Anzeige der verschiedenen Ansichten. Einige der Eigenschaften mit Auswirkungen auf die Anzeige von Elementen sind nur dann hilfreich, wenn die View-Eigenschaft auf einen bestimmten Wert festgelegt ist, während andere in allen Ansichten verwendet werden können. Die GridLines-Eigenschaft und die FullRowSelect-Eigenschaft sind z. B. nur dann hilfreich, wenn die View-Eigenschaft auf View.Details festgelegt ist, während die MultiSelect-Eigenschaft und die CheckBoxes-Eigenschaft in allen Ansichten verwendet werden können.

In der folgenden Tabelle werden einige der ListView-Member veranschaulicht sowie die Ansichten, in denen sie gültig sind.

ListView-Member

Ansicht

Alignment-Eigenschaft

SmallIcon oder LargeIcon

AutoArrange-Eigenschaft

SmallIcon oder LargeIcon

AutoResizeColumn-Methode

Details

CheckBoxes

Alle Ansichten außer Tile

Columns-Eigenschaft

Details oder Tile

DrawSubItem-Ereignis

Details

FindItemWithText-Methode

Details, List oder Tile

FindNearestItem-Methode

SmallIcon oder LargeIcon

GetItemAt-Methode

Details oder Tile

Groups-Eigenschaft

Alle Ansichten außer List

HeaderStyle-Eigenschaft

Details

InsertionMark-Eigenschaft

LargeIcon, SmallIcon oder Tile

Mit der View-Eigenschaft können Sie verschiedene Ansichten für Daten in der Anwendung bereitstellen oder eine bestimmte Ansicht fixieren, um deren Vorteile zu nutzen. Die View-Eigenschaft wird z. B. häufig auf View.Details festgelegt, da die Detailansicht eine Reihe von nur dort verfügbaren Ansichtsoptionen bietet.

Hinweis

Wenn für das ListView-Steuerelement keine Spaltenheader angegeben sind und die View-Eigenschaft auf View.Details festgelegt ist, werden im ListView-Steuerelement keine Elemente angezeigt. Wenn für das ListView-Steuerelement keine Spaltenheader angegeben sind und die View-Eigenschaft auf View.Tile festgelegt ist, werden im ListView-Steuerelement keine Unterelemente angezeigt.

In der Kachelansicht wird jedes Element mit einem großen Symbol auf der linken Seite und Textinformationen auf der rechten Seite angezeigt. Die Textinformationen bestehen aus der Elementbezeichnung, auf die die Unterelemente folgen. Standardmäßig wird nur das erste Unterelement angezeigt, das der Elementbezeichnung entspricht. Wenn zusätzliche Unterelemente angezeigt werden sollen, müssen Sie der ColumnHeader-Auflistung Columns-Objekte hinzufügen. Jedes Unterelement in der Kachelansicht entspricht einem Spaltenheader. Wenn Sie steuern möchten, welche Unterelemente und in welcher Reihenfolge diese angezeigt werden, müssen Sie die ListViewItem.ListViewSubItem.Name-Eigenschaft für jedes Element und die ColumnHeader.Name-Eigenschaft für jeden Header festlegen. Anschließend können Sie Header in der Columns-Auflistung hinzufügen, entfernen und neu anordnen, um zu dem gewünschten Ergebnis zu kommen.

Wenn Sie die Größe der Fenster in der Kachelansicht bestimmen möchten, legen Sie die TileSize-Eigenschaft fest. Dadurch wird der Zeilenumbruch verhindert, wenn der Unterelementtext zu lang für eine Zeile ist.

Ein Beispiel der Kachelansicht finden Sie unter der TileSize-Eigenschaft.

Hinweis

Obwohl Spalten nur in der Detailansicht angezeigt werden, werden Unterelemente ohne Spaltenheader weder in der Detailansicht noch in der Kachelansicht angezeigt.

Die Kachelansicht ist nur unter Windows XP und Windows Server 2003 verfügbar, wenn die Anwendung die Application.EnableVisualStyles-Methode aufruft. Bei älteren Betriebssystemen hat Code für die Kachelansicht keine Auswirkungen, und das ListView-Steuerelement wird in der Symbolansicht angezeigt. Code, der von der Kachelansicht abhängt, funktioniert daher u. U. nicht ordnungsgemäß.

Sie können mit hinzugefügtem Code ermitteln, ob die Kachelansicht verfügbar ist, und ggf. eine Ausweichfunktion bereitstellen. Wenn Sie z. B. die Darstellung von ListView-Elementen in der Kachelansicht mithilfe von Ownerdrawing anpassen, können Sie Zeichnungscode verwenden, der der Symbolansicht entspricht, wenn er unter Betriebssystemen ausgeführt wird, die die Kachelansicht nicht unterstützen.

Das Feature für die Kachelansicht wird von derselben Bibliothek bereitgestellt, die das Feature für Betriebssystemdesigns zur Verfügung stellt. Wenn Sie die Verfügbarkeit dieser Bibliothek überprüfen möchten, rufen Sie die FeatureSupport.IsPresent(Object)-Methodenüberladung auf, und übergeben Sie den OSFeature.Themes-Wert.

Beispiel

Im folgenden Codebeispiel wird ein ListView-Steuerelement mit drei angegebenen ListViewItem-Objekten erstellt. Für jedes Element werden drei ListViewItem.ListViewSubItem-Objekte angegeben. Außerdem werden ColumnHeader-Objekte zum Anzeigen der Unterelemente in der Detailansicht erstellt. Darüber hinaus werden in dem Codebeispiel zwei ImageList-Objekte erstellt, um Bilder für die ListViewItem-Objekte bereitzustellen. Diese ImageList-Objekte werden der LargeImageList-Eigenschaft und der SmallImageList-Eigenschaft hinzugefügt. In diesem Beispiel werden beim Erstellen des ListView-Steuerelements die folgenden Eigenschaften verwendet:

In diesem Beispiel muss der Code einem Form hinzugefügt werden, und die im Beispiel erstellte Methode muss vom Konstruktor oder einer anderen Methode im Formular aufgerufen werden. Außerdem müssen sich in diesem Beispiel die Bilder MySmallImage1, MySmallImage2, MyLargeImage1 und MyLargeImage2 im Stammverzeichnis von Laufwerk C befinden.

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.
    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 'CreateMyListView
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.
    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:
   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.
      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.set_Bounds(new Rectangle(new Point(10, 10), 
        new Size(300, 200)));

    // Set the view to show details.
    listView1.set_View(View.Details);

    // Allow the user to edit item text.
    listView1.set_LabelEdit(true);

    // Allow the user to rearrange columns.
    listView1.set_AllowColumnReorder(true);

    // Display check boxes.
    listView1.set_CheckBoxes(true);

    // Select the item and subitems when selection is made.
    listView1.set_FullRowSelect(true);

    // Display grid lines.
    listView1.set_GridLines(true);

    // Sort the items in the list in ascending order.
    listView1.set_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.set_Checked(true);

    item1.get_SubItems().Add("1");
    item1.get_SubItems().Add("2");
    item1.get_SubItems().Add("3");

    ListViewItem item2 = new ListViewItem("item2", 1);
    item2.get_SubItems().Add("4");
    item2.get_SubItems().Add("5");
    item2.get_SubItems().Add("6");

    ListViewItem item3 = new ListViewItem("item3", 0);

    // Place a check mark next to the item.
    item3.set_Checked(true);

    item3.get_SubItems().Add("7");
    item3.get_SubItems().Add("8");
    item3.get_SubItems().Add("9");

    // Create columns for the items and subitems.
    listView1.get_Columns().Add("Item Column", -2, 
        HorizontalAlignment.Left);
    listView1.get_Columns().Add("Column 2", -2, HorizontalAlignment.Left);
    listView1.get_Columns().Add("Column 3", -2, HorizontalAlignment.Left);
    listView1.get_Columns().Add("Column 4", -2, HorizontalAlignment.Center);

    //Add the items to the ListView.
    listView1.get_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.get_Images().Add(Bitmap.FromFile(
        "C:\\MySmallImage1.bmp"));
    imageListSmall.get_Images().Add(Bitmap.FromFile(
        "C:\\MySmallImage2.bmp"));
    imageListLarge.get_Images().Add(Bitmap.FromFile(
        "C:\\MyLargeImage1.bmp"));
    imageListLarge.get_Images().Add(Bitmap.FromFile(
        "C:\\MyLargeImage2.bmp"));

    //Assign the ImageList objects to the ListView.
    listView1.set_LargeImageList(imageListLarge);
    listView1.set_SmallImageList(imageListSmall);

    // Add the ListView to the control collection.
    this.get_Controls().Add(listView1);
} //CreateMyListView

Plattformen

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

.NET Compact Framework

Unterstützt in: 2.0, 1.0

Siehe auch

Referenz

ListView-Klasse
ListView-Member
System.Windows.Forms-Namespace
View
ListView.TileSize-Eigenschaft
Application.EnableVisualStyles