ListViewItem Класс

Определение

Представляет элемент в элементе управления ListView.

public ref class ListViewItem : ICloneable, System::Runtime::Serialization::ISerializable
[System.ComponentModel.TypeConverter(typeof(System.Windows.Forms.ListViewItemConverter))]
[System.Serializable]
public class ListViewItem : ICloneable, System.Runtime.Serialization.ISerializable
[<System.ComponentModel.TypeConverter(typeof(System.Windows.Forms.ListViewItemConverter))>]
[<System.Serializable>]
type ListViewItem = class
    interface ICloneable
    interface ISerializable
Public Class ListViewItem
Implements ICloneable, ISerializable
Наследование
ListViewItem
Атрибуты
Реализации

Примеры

В следующем примере кода создается ListView элемент управления с тремя ListViewItem указанными объектами и тремя ListViewItem.ListViewSubItem объектами, заданными для каждого элемента. В примере также создаются ColumnHeader объекты для отображения подэлементов в представлении Details. ImageListВ примере кода также создаются два объекта для предоставления изображений для ListViewItem объектов. Эти ImageList объекты добавляются в LargeImageList Свойства и SmallImageList . В примере используются следующие свойства при создании ListView элемента управления:

Необходимо добавить код в Form и вызвать метод, созданный в примере, из конструктора или другого метода в форме. В этом примере требуется, чтобы образы с именами MySmallImage1 , MySmallImage2 , MyLargeImage1 и MyLargeImage2 размещались в корневом каталоге диска 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

Комментарии

ListViewЭлемент управления аналогичен ListBox тому, что он отображает список элементов. Основное отличие состоит в том, что ListView элемент управления предоставляет несколько различных способов просмотра элементов пользователем. ListViewItemКласс определяет внешний вид, поведение и данные, связанные с элементом, который отображается в ListView элементе управления. ListViewItem объекты могут отображаться в ListView элементе управления в одном из четырех различных представлений. Элементы могут отображаться в виде крупных или мелких значков или в виде мелких значков в вертикальном списке. Элементы также могут содержать подэлементы, содержащие сведения, связанные с родительским элементом. Четвертый стиль представления, подробное представление, позволяет отображать элемент и его подэлементы в сетке с заголовками столбцов, которые можно использовать для обнаружения сведений, отображаемых во вложенном элементе.

Большинство свойств ListViewItem класса предоставляют способы изменения отображаемого элемента в ListView элементе управления, с которым он связан. BackColorСвойства, ForeColor и Font позволяют изменить способ отображения текста элемента в ListView элементе управления. ImageIndexСвойство позволяет указать изображение для загрузки из объекта ImageList , назначенного ListView элементу управления (путем задания LargeImageList SmallImageList свойств или ListView ). Элементы могут отображать флажки, чтобы получить возможность выбора элементов от пользователя аналогично CheckedListBox элементу управления. Свойство можно использовать Checked , чтобы определить, установлен ли элемент, или установить или снять флажок во время выполнения. Элементы могут отображать любое количество подэлементов, если View свойство связанного ListView элемента управления имеет значение Details , а столбцы определены в элементе ListView.ColumnHeaderCollection ListView управления. К элементу можно добавить подэлементы, вызвав Add метод ListViewItem.ListViewSubItemCollection класса. SubItemsСвойство позволяет получить доступ к ListViewItem.ListViewSubItemCollection классу и его членам.

Некоторые свойства и методы ListViewItem класса — это зависящие от элемента версии свойств и методов в ListView элементе управления. Например, EnsureVisible метод аналогичен ListView версии метода, но ListViewItem версия влияет только на текущий элемент.

ListViewItemКласс также предоставляет методы, не являющиеся версиями ListView методов. BeginEditМетод помещает текст элемента в режим редактирования, чтобы пользователь мог изменить текст элемента (если LabelEdit свойство ListView элемента управления имеет значение true ). CloneМетод позволяет создавать копии существующих ListViewItem объектов для повторного использования в других ListView элементах управления.

Конструкторы

ListViewItem()

Инициализирует новый экземпляр класса ListViewItem со значениями по умолчанию.

ListViewItem(ListViewGroup)

Инициализирует новый экземпляр класса ListViewItem и присваивает его заданной группе.

ListViewItem(ListViewItem+ListViewSubItem[], Int32)

Инициализирует новый экземпляр класса ListViewItem массивом объектов ListViewItem.ListViewSubItem и позицией индекса значка элемента.

ListViewItem(ListViewItem+ListViewSubItem[], Int32, ListViewGroup)

Инициализирует новый экземпляр класса ListViewItem позицией индекса изображения значка элемента и массивом объектов ListViewItem.ListViewSubItem, а также присваивает этот элемент заданной группе.

ListViewItem(ListViewItem+ListViewSubItem[], String)

Инициализирует новый экземпляр класса ListViewItem указанными подэлементами и заданным изображением.

ListViewItem(ListViewItem+ListViewSubItem[], String, ListViewGroup)

Инициализирует новый экземпляр класса ListViewItem указанными подэлементами, изображением и группой.

ListViewItem(SerializationInfo, StreamingContext)

Инициализирует новый экземпляр класса ListViewItem с указанными данными о сериализации и потоковым контекстом.

ListViewItem(String)

Инициализирует новый экземпляр класса ListViewItem указанным текстом элемента.

ListViewItem(String, Int32)

Инициализирует новый экземпляр класса ListViewItem заданным текстом элемента и позицией индекса изображения значка элемента.

ListViewItem(String, Int32, ListViewGroup)

Инициализирует новый экземпляр класса ListViewItem заданным текстом элемента и позицией индекса изображения значка элемента, а также присваивает этот элемент заданной группе.

ListViewItem(String, ListViewGroup)

Инициализирует новый экземпляр класса ListViewItem заданным текстом элемента и присваивает его заданной группе.

ListViewItem(String, String)

Инициализирует новый экземпляр класса ListViewItem с указанным текстом и заданным изображением.

ListViewItem(String, String, ListViewGroup)

Инициализирует новый экземпляр класса ListViewItem указанными текстом, изображением и группой.

ListViewItem(String[])

Инициализирует новый экземпляр класса ListViewItem массивом строк, представляющих подэлементы.

ListViewItem(String[], Int32)

Инициализирует новый экземпляр класса ListViewItem массивом строк, представляющих подэлементы, и позицией индекса изображения значка элемента.

ListViewItem(String[], Int32, Color, Color, Font)

Инициализирует новый экземпляр класса ListViewItem массивом строк, представляющих подэлементы, позицией индекса изображения значка элемента, а также цветом переднего плана, цветом фона и шрифтом для данного элемента.

ListViewItem(String[], Int32, Color, Color, Font, ListViewGroup)

Инициализирует новый экземпляр класса ListViewItem массивом строк, представляющих подэлементы, позицией индекса изображения значка элемента, а также цветом переднего плана, цветом фона и шрифтом для данного элемента. Присваивает элемент заданной группе.

ListViewItem(String[], Int32, ListViewGroup)

Инициализирует новый экземпляр класса ListViewItem массивом строк, представляющих подэлементы и позицией индекса изображения значка элемента, а также присваивает этот элемент заданной группе.

ListViewItem(String[], ListViewGroup)

Инициализирует новый экземпляр класса ListViewItem массивом строк, представляющих подэлементы, а также присваивает этот элемент заданной группе.

ListViewItem(String[], String)

Инициализирует новый экземпляр класса ListViewItem указанными элементом, текстом подэлемента и изображением.

ListViewItem(String[], String, Color, Color, Font)

Инициализирует новый экземпляр класса ListViewItem указанными подэлементами, содержащими заданные текст, цвета и шрифт.

ListViewItem(String[], String, Color, Color, Font, ListViewGroup)

Инициализирует новый экземпляр класса ListViewItem указанными подэлементами, содержащими заданные текст, изображение, цвета и группу.

ListViewItem(String[], String, ListViewGroup)

Инициализирует новый экземпляр класса ListViewItem указанными подэлементами, содержащими заданные текст, изображение и группу.

Свойства

BackColor

Получает или задает цвет фона текста данного элемента.

Bounds

Возвращает прямоугольник, ограничивающий данный элемент, включая его подэлементы.

Checked

Получает или задает значение, указывающее, установлен ли флажок для данного элемента.

Focused

Получает или задает значение, указывающее, установлен ли фокус на данный элемент в элементе управления ListView.

Font

Возвращает или задает шрифт текста, отображаемого данным элементом.

ForeColor

Получает или задает цвет переднего плана для текста данного элемента.

Group

Получает или задает группу, которой присвоен данный элемент.

ImageIndex

Получает или задает индекс изображения, выводимого для данного элемента.

ImageKey

Получает или задает ключ для изображения, выводимого для данного элемента.

ImageList

Возвращает объект ImageList, содержащий изображение, которое отображается вместе с элементом.

IndentCount

Получает или задает количество значений ширины мелких изображений, на которые будет установлен отступ в объекте ListViewItem.

Index

Возвращает начинающийся с нуля индекс позиции в элементе управления ListView.

ListView

Возвращает элемент управления ListView, содержащий данный элемент.

Name

Получает или задает имя, сопоставленное данному объекту ListViewItem.

Position

Получает или задает позицию верхнего левого угла объекта ListViewItem.

Selected

Получает или задает значение, указывающее, выбран ли данный элемент.

StateImageIndex

Получает или задает индекс изображения состояния (например установленного или снятого флажка, указывающего состояние элемента), который выводится для данного элемента.

SubItems

Возвращает коллекцию, содержащую все подэлементы данного элемента.

Tag

Получает или задает объект, содержащий данные, сопоставленные данному элементу.

Text

Получает или задает текст элемента.

ToolTipText

Получает или задает текст, отображаемый при наведении и удерживании указателя мыши на элементе управления ListViewItem.

UseItemStyleForSubItems

Получает или задает значение, указывающее, будут ли свойства Font, ForeColor и BackColor данного элемента использоваться для всех его подэлементов.

Методы

BeginEdit()

Переводит текст данного элемента в режим правки.

Clone()

Создает точную копию элемента.

Deserialize(SerializationInfo, StreamingContext)

Десериализует данный элемент.

EnsureVisible()

Обеспечивает возможность наблюдения заданного элемента в данном элементе управления, при необходимости выполняя прокрутку содержимого элемента управления.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
FindNearestItem(SearchDirectionHint)

Находит следующий элемент в объекте ListViewItem, начиная поиск от заданной точки в указанном направлении.

GetBounds(ItemBoundsPortion)

Извлекает указанную часть прямоугольника, ограничивающего данный элемент.

GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetSubItemAt(Int32, Int32)

Возвращает подэлемент элемента ListViewItem с указанными координатами.

GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
Remove()

Удаляет элемент из сопоставленного ему элемента управления ListView.

Serialize(SerializationInfo, StreamingContext)

Сериализует данный элемент.

ToString()

Возвращает строку, представляющую текущий объект.

Явные реализации интерфейса

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Сериализует данный элемент.

Применяется к

См. также раздел