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

Définition

Obtient ou définit la façon d'afficher les éléments dans le contrôle.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

Valeur de propriété

Une des valeurs de View.One of the View values. La valeur par défaut est LargeIcon.The default is LargeIcon.

Exceptions

La valeur spécifiée n'est pas l'une des valeurs View.The value specified is not one of the View values.

Exemples

L’exemple de code suivant crée ListView un contrôle avec ListViewItem trois objets spécifiés ListViewItem.ListViewSubItem et trois objets spécifiés pour chaque élément.The following code example creates a ListView control with three ListViewItem objects specified and three ListViewItem.ListViewSubItem objects specified for each item. L’exemple crée ColumnHeader également des objets pour afficher les sous-éléments en mode Détails.The example also creates ColumnHeader objects to display the subitems in details view. Deux ImageList objets sont également créés dans l’exemple de code pour fournir des images ListViewItem pour les objets.Two ImageList objects are also created in the code example to provide images for the ListViewItem objects. Ces ImageList objets sont ajoutés LargeImageList aux propriétés et SmallImageList .These ImageList objects are added to the LargeImageList and SmallImageList properties. L’exemple utilise les propriétés suivantes pour créer le ListView contrôle.The example uses the following properties in creating the ListView control.

Cet exemple requiert que vous ayez ajouté le code à un Form et que vous appeliez la méthode créée dans l’exemple à partir du constructeur ou d’une autre méthode sur le formulaire.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. L’exemple requiert également que les images MySmallImage1nommées MyLargeImage1, MySmallImage2, MyLargeImage2 et se trouvent dans le répertoire racine du lecteur C.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 'CreateMyListView

Remarques

La View propriété vous permet de spécifier le type d’affichage que ListView le contrôle utilise pour afficher des éléments.The View property allows you to specify the type of display the ListView control uses to display items. Vous pouvez définir la View propriété pour afficher chaque élément avec de grandes ou de petites icônes ou afficher des éléments dans une liste verticale.You can set the View property to display each item with large or small icons or display items in a vertical list. L’option la plus riche est le mode Détails, qui vous permet d’afficher non seulement les éléments, mais également tous les sous-éléments spécifiés pour chaque élément.The richest option is the details view, which allows you to view not only the items but any subitems specified for each item. Chaque élément est affiché dans une grille, chaque élément étant répertorié verticalement et les sous-éléments de chaque élément affiché dans une colonne avec des en-têtes de colonne.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. Le mode Détails est un moyen parfait d’afficher des informations de base de données à un utilisateur.The details view is a perfect way to display database information to a user. Avec Windows XP et Windows Server 2003, vous pouvez également afficher des éléments sous forme de vignettes qui équilibrent les informations graphiques et textuelles en affichant une grande icône avec les informations de sous-élément de votre choix.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. Pour activer l’affichage en mosaïque, votre application doit Application.EnableVisualStyles appeler la méthode.To enable tile view, your application must call the Application.EnableVisualStyles method. La vue de petite image affiche chaque élément avec une icône et des informations textuelles à droite de l’icône.The small-image view displays each item with an icon and textual information to the right of the icon. La vue grande image affiche chaque élément avec une icône et des informations textuelles sous l’icône.The large-image view displays each item with an icon and textual information below the icon. La taille des icônes pour la liste d’images est spécifiée par la ImageSize propriété ImageList du pour les SmallImageList propriétés ou LargeImageList .The size of the icons for the image list is specified by the ImageSize property of the ImageList for the SmallImageList or LargeImageList properties.

Notes

Si vous utilisez plusieurs listes d’images, pour les petites et grandes icônes, avec un ListView contrôle, vous devez placer les petites et les grandes versions de l’image au même emplacement d’index dans leurs listes d’images respectives.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. Lors du basculement entre les vues, l’emplacement d’index de l’image dans une liste est utilisé pour localiser l’image dans l’autre liste, quelle que soit la valeur de clé spécifiée.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.

La plupart des propriétés ListView du contrôle affectent la manière dont les différentes vues se comportent ou s’affichent.Most of the properties in the ListView control affect how the different views behave or are displayed. Certaines propriétés qui affectent les vues des éléments sont utiles uniquement lorsque la View propriété est définie sur une valeur spécifique, tandis que d’autres sont utiles dans toutes les vues.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. Par exemple, les propriétés telles GridLines que FullRowSelect et sont utiles uniquement lorsque View View.Detailsla propriété a la valeur, tandis CheckBoxes que les MultiSelect propriétés et sont utiles dans toutes les vues.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.

Le tableau suivant présente certains ListView membres et les vues dans lesquels ils sont valides.The following table shows some of the ListView members and the views they are valid in.

Membre ListViewListView member VueView
PropriétéAlignmentAlignment property SmallIcon ou LargeIconSmallIcon or LargeIcon
PropriétéAutoArrangeAutoArrange property SmallIcon ou LargeIconSmallIcon or LargeIcon
Méthode AutoResizeColumnAutoResizeColumn method Details
CheckBoxes Toutes les vues saufTileAll views except Tile
PropriétéColumnsColumns property Details ou TileDetails or Tile
ÉvénementDrawSubItemDrawSubItem event Details
Méthode FindItemWithTextFindItemWithText method Details, Listou TileDetails, List, or Tile
Méthode FindNearestItemFindNearestItem method SmallIcon ou LargeIconSmallIcon or LargeIcon
Méthode GetItemAtGetItemAt method Details ou TileDetails or Tile
PropriétéGroupsGroups property Toutes les vues saufListAll views except List
PropriétéHeaderStyleHeaderStyle property Details
PropriétéInsertionMarkInsertionMark property LargeIcon, SmallIconou TileLargeIcon, SmallIcon, or Tile

Vous pouvez utiliser la View propriété pour fournir différentes vues de données dans votre application, ou pour verrouiller une vue spécifique afin d’utiliser les avantages de cette vue.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. Par exemple, la View propriété est souvent définie sur View.Details , car le mode Détails fournit un certain nombre d’options d’affichage non disponibles dans les autres vues.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.

Notes

Si votre ListView contrôle n’a pas d’en-têtes de colonnes spécifiés et que vous View.Detailsaffectez ListView à la View propriété la valeur, le contrôle n’affiche aucun élément.If 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. Si votre ListView contrôle n’a pas d’en-têtes de colonnes spécifiés et que vous View.Tileaffectez ListView à la View propriété la valeur, le contrôle n’affiche pas de sous-éléments.If 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.

L’affichage en mosaïque affiche chaque élément avec une grande icône à gauche et des informations textuelles à droite.The tile view displays each item with a large icon on the left and textual information on the right. Les informations textuelles se composent de l’étiquette d’élément suivie de sous-éléments.The textual information consists of the item label followed by subitems. Par défaut, seul le premier sous-élément est affiché, ce qui correspond à l’étiquette de l’élément.By default, only the first subitem is displayed, which corresponds to the item label. Pour afficher des sous-éléments supplémentaires, vous ColumnHeader devez ajouter des Columns objets à la collection.To display additional subitems, you must add ColumnHeader objects to the Columns collection. Chaque sous-élément de la vignette correspond à un en-tête de colonne.Each subitem in the tile corresponds to a column header. Pour contrôler les sous-éléments affichés et l’ordre dans lequel ils sont affichés, vous devez définir la ListViewItem.ListViewSubItem.Name propriété pour chaque élément et la ColumnHeader.Name propriété pour chaque en-tête.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. Vous pouvez ensuite ajouter, supprimer et réorganiser les en-têtes de Columns la collection pour obtenir le résultat souhaité.You can then add, remove, and rearrange headers in the Columns collection to achieve the desired result.

Pour contrôler la taille des vignettes dans l’affichage en mosaïque, définissez TileSize la propriété.To control the size of the tiles in the tile view, set the TileSize property. Cela est utile pour empêcher le retour à la ligne lorsque le texte du sous-élément est trop long pour une seule ligne.This is useful to prevent line-wrapping when subitem text is too long for a single line.

Pour obtenir un exemple de l’affichage en mosaïque, TileSize consultez la propriété.For an example of the tile view, see the TileSize property.

Notes

Bien que les colonnes s’affichent uniquement en mode Détails, les sous-éléments sans en-têtes de colonne ne s’affichent pas en mode Détails ou en mode mosaïque.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.

L’affichage en mosaïque est disponible uniquement sur Windows XP et Windows Server 2003 lorsque votre application appelle Application.EnableVisualStyles la méthode.The tile view is available only on Windows XP and Windows Server 2003 when your application calls the Application.EnableVisualStyles method. Sur les systèmes d'exploitation antérieurs, tout code lié à l'affichage en mosaïque n'a aucun effet et le contrôle ListView s'affiche en mode Grandes icônes.On earlier operating systems, any code related to the tile view has no effect, and the ListView control displays in the large icon view. Par conséquent, tout code qui dépend de l’affichage en mosaïque peut ne pas fonctionner correctement.As a result, any code that depends on the tile view might not work correctly.

Vous pouvez inclure du code qui détermine si l’affichage en mosaïque est disponible et fournir d’autres fonctionnalités lorsqu’il n’est pas disponible.You might want to include code that determines whether tile view is available, and provide alternate functionality when it is unavailable. Par exemple, lorsque vous utilisez le dessin owner-drawn pour ListView personnaliser l’apparence des éléments dans l’affichage en mosaïque, vous souhaiterez peut-être utiliser le code de dessin approprié à la vue de grande icône lors de l’exécution sur des systèmes d’exploitation qui ne prennent pas en charge l’affichage en mosaïque.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.

La fonctionnalité d’affichage en mosaïque est fournie par la même bibliothèque qui fournit la fonctionnalité de thèmes de système d’exploitation.The tile view feature is provided by the same library that provides the operating system themes feature. Pour vérifier la disponibilité de cette bibliothèque, appelez la FeatureSupport.IsPresent(Object) surcharge de méthode et transmettez la OSFeature.Themes valeur.To check for the availability of this library, call the FeatureSupport.IsPresent(Object) method overload and pass in the OSFeature.Themes value.

S’applique à

Voir aussi