Freigeben über


ListViewItem-Klasse

Stellt ein Element in einem ListView-Steuerelement dar.

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

Syntax

'Declaration
<SerializableAttribute> _
Public Class ListViewItem
    Implements ICloneable, ISerializable
'Usage
Dim instance As ListViewItem
[SerializableAttribute] 
public class ListViewItem : ICloneable, ISerializable
[SerializableAttribute] 
public ref class ListViewItem : ICloneable, ISerializable
/** @attribute SerializableAttribute() */ 
public class ListViewItem implements ICloneable, ISerializable
SerializableAttribute 
public class ListViewItem implements ICloneable, ISerializable

Hinweise

Das ListView-Steuerelement ähnelt einer ListBox, da es eine Liste von Elementen anzeigt. Der wesentliche Unterschied liegt darin, dass das ListView-Steuerelement dem Benutzer verschiedene Anzeigemöglichkeiten zur Verfügung stellt. Die ListViewItem-Klasse definiert die Darstellung, das Verhalten und die Daten eines Elements, das in dem ListView-Steuerelement angezeigt wird. ListViewItem-Objekte können auf vier verschiedene Weisen im ListView-Steuerelement angezeigt werden. Elemente können nebeneinander als große oder kleine Symbole oder untereinander als kleine Symbole in Form einer Liste angezeigt werden. Elemente können auch Unterelemente enthalten, die Informationen zum übergeordneten Element enthalten In der vierten Ansicht, der Detailansicht, wird das Element mit den zugehörigen Unterelementen in einem Datenblatt mit Spaltenüberschriften angezeigt, die die in den Unterelementen enthaltenen Informationen bezeichnen.

Die meisten Eigenschaften der ListViewItem-Klasse ermöglichen es, die Anzeige der Elemente im entsprechenden ListView-Steuerelement zu ändern. Mithilfe der folgenden Eigenschaften können Sie die Anzeige des Texts für das Elements im ListView-Steuerelement ändern: BackColor, ForeColor und Font. Außerdem können Sie mithilfe der ImageIndex-Eigenschaft angeben, welches Bild aus der ImageList geladen wird, die dem ListView-Steuerelement zugeordnet ist, indem Sie die LargeImageList-Eigenschaft oder die SmallImageList-Eigenschaft der ListView festlegen. Um dem Benutzer eine Auswahl von Elementen zu ermöglichen, können Elemente, ähnlich wie bei einem CheckedListBox-Steuerelement, mit Kontrollkästchen versehen werden. Mithilfe der Checked-Eigenschaft kann bestimmt werden, ob ein Element aktiviert ist, oder ein Kontrollkästchen kann zur Laufzeit aktiviert bzw. deaktiviert werden. Wenn die View-Eigenschaft des entsprechenden ListView-Steuerelements auf Details festgelegt ist und in der ListView.ColumnHeaderCollection des ListView-Steuerelements Spalten definiert sind, können Elemente eine beliebige Anzahl von Unterelementen anzeigen. Durch das Aufrufen der Add-Methode der ListViewItem.ListViewSubItemCollection-Klasse können einem Element Unterelemente hinzugefügt werden. Mithilfe der SubItems-Eigenschaft erhalten Sie Zugriff auf die ListViewItem.ListViewSubItemCollection-Klasse und ihre Member.

Einige Eigenschaften und Methoden der ListViewItem-Klasse sind elementspezifische Versionen der Eigenschaften und Methoden des ListView-Steuerelements. Die EnsureVisible-Methode ähnelt beispielsweise der ListView-Version der Methode, die ListViewItem-Version beeinflusst jedoch lediglich das aktuelle Element.

Die ListViewItem-Klasse stellt auch Methoden zur Verfügung, die keine Versionen der ListView-Methoden sind. Die BeginEdit-Methode versetzt den Elementtext in den Bearbeitungsmodus, damit der Benutzer diesen ändern kann. Die LabelEdit-Eigenschaft des ListView-Steuerelements muss dafür auf true festgelegt sein. Die Clone-Methode ermöglicht das Erstellen von Kopien vorhandener ListViewItem-Objekte für die Wiederverwendung in anderen ListView-Steuerelementen.

Beispiel

Im folgenden Codebeispiel wird ein ListView-Steuerelement mit drei angegebenen ListViewItem-Objekten erstellt, und 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 im 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 die folgenden Eigenschaften zum Erstellen des ListView-Steuerelements verwendet:

Der Code muss einem Form hinzugefügt werden, und die im Beispiel erstellte Methode muss vom Konstruktor oder einer anderen Methode im Formular aufgerufen werden. Des Weiteren müssen für das Beispiel die Bilder MySmallImage1, MySmallImage2, MyLargeImage1 und MyLargeImage2 im Stammverzeichnis von Laufwerk C vorhanden sein.

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

Vererbungshierarchie

System.Object
  System.Windows.Forms.ListViewItem

Threadsicherheit

Alle öffentlichen statischen (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

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

ListViewItem-Member
System.Windows.Forms-Namespace
ListView-Klasse
ListViewItem.ListViewSubItem

Weitere Ressourcen

ListView-Steuerelement (Windows Forms)