ListView.View Eigenschap

Definitie

Hiermee wordt opgehaald of ingesteld hoe items worden weergegeven in het besturingselement.

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

Waarde van eigenschap

Een van de View waarden. De standaardwaarde is LargeIcon.

Uitzonderingen

De opgegeven waarde is geen van de View waarden.

Voorbeelden

In het volgende codevoorbeeld wordt een ListView besturingselement gemaakt met drie ListViewItem opgegeven objecten en drie ListViewItem.ListViewSubItem objecten die voor elk item zijn opgegeven. In het voorbeeld worden ook objecten gemaakt ColumnHeader om de subitems weer te geven in de detailweergave. Er worden ook twee ImageList objecten gemaakt in het codevoorbeeld om afbeeldingen voor de ListViewItem objecten te bieden. Deze ImageList objecten worden toegevoegd aan de LargeImageList en SmallImageList eigenschappen. In het voorbeeld worden de volgende eigenschappen gebruikt bij het maken van het ListView besturingselement.

Voor dit voorbeeld moet u de code hebben toegevoegd aan een Form en de methode aanroepen die in het voorbeeld is gemaakt vanuit de constructor of een andere methode op het formulier. Het voorbeeld vereist ook dat installatiekopieën met de naam MySmallImage1, MySmallImage2en MyLargeImage1MyLargeImage2 zich bevinden in de hoofdmap van station 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

Opmerkingen

Met View de eigenschap kunt u opgeven welk type weergave het ListView besturingselement gebruikt om items weer te geven. U kunt de View eigenschap instellen om elk item met grote of kleine pictogrammen weer te geven of items in een verticale lijst weer te geven. De rijkste optie is de detailweergave, waarmee u niet alleen de items, maar eventuele subitems kunt bekijken die voor elk item zijn opgegeven. Elk item wordt weergegeven in een raster, waarbij elk item verticaal wordt weergegeven en de subitems voor elk item dat in een kolom wordt weergegeven, met kolomkoppen. De detailweergave is een perfecte manier om databasegegevens weer te geven aan een gebruiker. Met Windows XP en Windows Server 2003 kunt u items ook weergeven als tegels die grafische en tekstuele informatie verdelen door een groot pictogram samen met subitemgegevens van uw keuze weer te geven. Als u de tegelweergave wilt inschakelen, moet uw toepassing de Application.EnableVisualStyles methode aanroepen. In de weergave met kleine afbeeldingen wordt elk item weergegeven met een pictogram en tekstuele informatie rechts van het pictogram. In de weergave met grote afbeeldingen wordt elk item weergegeven met een pictogram en tekstuele informatie onder het pictogram. De grootte van de pictogrammen voor de lijst met afbeeldingen wordt opgegeven door de ImageSize eigenschap van de ImageList voor de SmallImageList of LargeImageList eigenschappen.

Note

Als u meerdere afbeeldingslijsten gebruikt voor een kleine en grote pictogramweergave, met een ListView besturingselement, moet u kleine en grote versies van de installatiekopieën op dezelfde indexlocatie plaatsen in hun respectieve afbeeldingslijsten. Wanneer u schakelt tussen weergaven, wordt de indexlocatie van de afbeelding in de ene lijst gebruikt om de afbeelding in de andere lijst te vinden, ongeacht de opgegeven sleutelwaarde.

De meeste eigenschappen in het ListView besturingselement zijn van invloed op hoe de verschillende weergaven zich gedragen of worden weergegeven. Sommige eigenschappen die van invloed zijn op de weergaven van de items zijn alleen nuttig wanneer de View eigenschap is ingesteld op een specifieke waarde, terwijl andere eigenschappen nuttig zijn in alle weergaven. Eigenschappen zoals GridLines en FullRowSelect zijn bijvoorbeeld alleen nuttig wanneer de eigenschap is ingesteld op View, terwijl de View.DetailsMultiSelect eigenschappen CheckBoxes nuttig zijn in alle weergaven.

In de volgende tabel ziet u enkele van de ListView leden en de weergaven waarin ze geldig zijn.

ListView-lid Bekijk
eigenschap Alignment SmallIcon of LargeIcon
eigenschap AutoArrange SmallIcon of LargeIcon
methode AutoResizeColumn Details
CheckBoxes Alle weergaven, behalve Tile
eigenschap Columns Details of Tile
DrawSubItem gebeurtenis Details
methode FindItemWithText Details, Listof Tile
methode FindNearestItem SmallIcon of LargeIcon
methode GetItemAt Details of Tile
eigenschap Groups Alle weergaven, behalve List
eigenschap HeaderStyle Details
eigenschap InsertionMark LargeIcon, SmallIconof Tile

U kunt de View eigenschap gebruiken om verschillende weergaven van gegevens in uw toepassing te bieden of om een specifieke weergave te vergrendelen om de voordelen van die weergave te gebruiken. De View eigenschap is bijvoorbeeld vaak ingesteld op View.Details omdat de detailweergave een aantal weergaveopties biedt die niet beschikbaar zijn in de andere weergaven.

Note

Als uw ListView besturingselement geen kolomkoppen heeft opgegeven en u de View eigenschap View.Detailsinstelt op, worden er geen items weergegeven in het ListView besturingselement. Als uw ListView besturingselement geen kolomkoppen heeft opgegeven en u de View eigenschap View.Tileinstelt op, ListView worden er geen subitems weergegeven.

In de tegelweergave wordt elk item weergegeven met een groot pictogram aan de linkerkant en tekstinformatie aan de rechterkant. De tekstuele informatie bestaat uit het itemlabel, gevolgd door subitems. Standaard wordt alleen het eerste subitem weergegeven, dat overeenkomt met het itemlabel. Als u extra subitems wilt weergeven, moet u objecten toevoegen ColumnHeader aan de Columns verzameling. Elke subitem in de tegel komt overeen met een kolomkop. Als u wilt bepalen welke subitems worden weergegeven en de volgorde waarin ze worden weergegeven, moet u de ListViewItem.ListViewSubItem.Name eigenschap instellen voor elk item en de ColumnHeader.Name eigenschap voor elke koptekst. U kunt vervolgens kopteksten in de Columns verzameling toevoegen, verwijderen en opnieuw rangschikken om het gewenste resultaat te bereiken.

Als u de grootte van de tegels in de tegelweergave wilt bepalen, stelt u de TileSize eigenschap in. Dit is handig om regelterugloop te voorkomen wanneer subitemtekst te lang is voor één regel.

Zie TileSize de eigenschap voor een voorbeeld van de tegelweergave.

Note

Hoewel kolommen alleen worden weergegeven in de detailweergave, worden subitems zonder kolomkoppen niet weergegeven in de detailweergave of de tegelweergave.

De tegelweergave is alleen beschikbaar op Windows XP en Windows Server 2003 wanneer uw toepassing de methode Application.EnableVisualStyles aanroept. Op eerdere besturingssystemen heeft code met betrekking tot de tegelweergave geen effect en wordt het ListView besturingselement weergegeven in de grote pictogramweergave. Als gevolg hiervan werkt elke code die afhankelijk is van de tegelweergave mogelijk niet correct.

Mogelijk wilt u code opnemen die bepaalt of de tegelweergave beschikbaar is en alternatieve functionaliteit bieden wanneer deze niet beschikbaar is. Wanneer u bijvoorbeeld eigenaartekening gebruikt om het uiterlijk van ListView items in de tegelweergave aan te passen, kunt u de tekencode gebruiken die geschikt is voor de grote pictogramweergave wanneer deze wordt uitgevoerd op besturingssystemen die de tegelweergave niet ondersteunen.

De functie tegelweergave wordt geleverd door dezelfde bibliotheek die de functie besturingssysteemthema's biedt. Als u wilt controleren op de beschikbaarheid van deze bibliotheek, roept u de overbelasting van de FeatureSupport.IsPresent(Object) methode aan en geeft u de OSFeature.Themes waarde door.

Van toepassing op

Zie ook