System windows forms checkedlistbox

Checked List Box. Checked Indices Свойство

Определение

Коллекция отмеченных индексов в данном элементе управления CheckedListBox. Collection of checked indexes in this CheckedListBox.

Значение свойства

Примеры

В следующем примере выполняется перечисление отмеченных элементов в, CheckedListBox.CheckedIndexCollection чтобы увидеть, в каком состоянии проверить состояние элемента. The following example enumerates the checked items in the CheckedListBox.CheckedIndexCollection to see what check state an item is in. В примере демонстрируется использование CheckedIndices свойства для получения CheckedListBox.CheckedIndexCollection свойства, а CheckedItems свойство — для получения CheckedListBox.CheckedItemCollection . The example demonstrates using the CheckedIndices property to get the CheckedListBox.CheckedIndexCollection, and the CheckedItems property to get the CheckedListBox.CheckedItemCollection.

В первом цикле используется GetItemCheckState метод для получения CheckState каждого отмеченного элемента по заданному индексу элемента. The first loop uses the GetItemCheckState method to get the CheckState of each checked item, given the index of the item. Второй цикл также использует GetItemCheckState , но использует ListBox.ObjectCollection.IndexOf метод для получения индекса для элемента. The second loop also uses GetItemCheckState, but uses the ListBox.ObjectCollection.IndexOf method to retrieve the index for the item.

Комментарии

Коллекция проверенных индексов является подмножеством индексов в коллекции всех элементов в CheckedListBox элементе управления. The collection of checked indexes is a subset of the indexes into the collection of all items in the CheckedListBox control. Эти индексы задают элементы в проверяемом или неопределенном состоянии. These indexes specify items in a checked or indeterminate state.

Checked List Box. Checked Item Collection Класс

Определение

Инкапсулирует коллекцию помеченных элементов, включая элементы в неопределенном состоянии, в элементе управления CheckedListBox. Encapsulates the collection of checked items, including items in an indeterminate state, in a CheckedListBox control.

Примеры

В следующем примере выполняется перечисление отмеченных элементов в, CheckedListBox.CheckedIndexCollection чтобы увидеть, в каком состоянии проверить состояние элемента. The following example enumerates the checked items in the CheckedListBox.CheckedIndexCollection to see what check state an item is in. В примере демонстрируется использование GetItemCheckState метода для задания состояния проверки элемента. The example demonstrates using the GetItemCheckState method to set the check state of an item. В примере также демонстрируется использование CheckedIndices свойства для получения CheckedListBox.CheckedIndexCollection свойства, а CheckedItems свойство — для получения CheckedListBox.CheckedItemCollection . The example also demonstrates using the CheckedIndices property to get the CheckedListBox.CheckedIndexCollection, and the CheckedItems property to get the CheckedListBox.CheckedItemCollection.

В первом цикле используется GetItemCheckState метод для получения CheckState каждого отмеченного элемента по заданному индексу элемента. The first loop uses the GetItemCheckState method to get the CheckState of each checked item, given the index of the item. Второй цикл также использует GetItemCheckState , но использует ListBox.ObjectCollection.IndexOf метод для получения индекса для элемента. The second loop also uses GetItemCheckState, but uses the ListBox.ObjectCollection.IndexOf method to retrieve the index for the item.

Читайте также:  Net framework 4 5 для windows 10 что это такое

Комментарии

Коллекция отмеченных элементов является подмножеством всех элементов в CheckedListBox элементе управления; оно содержит только элементы, находящиеся в состоянии Checked или неопределенного состояния. The checked items collection is a subset of all items in the CheckedListBox control; it contains only those items that are in a checked or indeterminate state.

В следующей таблице приведен пример индексированной коллекции элементов в элементе управления (все элементы, содержащиеся в элементе управления). The following table is an example of the indexed collection of items in the control (all items contained in the control).

Индекс Index Элемент Item Состояние проверки Check State
0 0 Объект 1 object 1 Unchecked
1 1 Объект 2 object 2 Checked
2 2 Объект 3 object 3 Unchecked
3 3 Объект 4 object 4 Indeterminate
4 4 Объект 5 object 5 Checked

На основе предыдущего примера в следующей таблице показана индексированная коллекция отмеченных элементов. Based on the previous example, the following table shows the indexed collection of the checked items.

Индекс Index Элемент Item
0 0 Объект 2 object 2
1 1 Объект 4 object 4
2 2 Объект 5 object 5

CheckedListBoxКласс имеет два члена, которые позволяют получить доступ к хранимым индексам, Item[] свойству и IndexOf методу. The CheckedListBox class has two members that allow you to access the stored indexes, the Item[] property and the IndexOf method.

На основе предыдущего примера вызов Item[] свойства со значением параметра 1 возвращает объект 4. Based on the previous example, a call to the Item[] property with a parameter value of 1 returns object 4. При вызове IndexOf с параметром объекта 4 возвращается значение 1. A call to IndexOf with a parameter of object 4 returns a value of 1.

Свойства

Возвращает количество элементов в коллекции. Gets the number of items in the collection.

Получает значение, определяющее, доступна ли коллекция только для чтения. Gets a value indicating if the collection is read-only.

Получает объект в коллекции отмеченных элементов. Gets an object in the checked items collection.

Методы

Определяет, находится ли указанный элемент в коллекции. Determines whether the specified item is located in the collection.

Копирует коллекцию целиком в заданное место существующего массива. Copies the entire collection into an existing array at a specified location within the array.

Определяет, равен ли указанный объект текущему объекту. Determines whether the specified object is equal to the current object.

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

Возвращает перечислитель, который может использоваться для итерации по элементам коллекции CheckedItems. Returns an enumerator that can be used to iterate through the CheckedItems collection.

Служит хэш-функцией по умолчанию. Serves as the default hash function.

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

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

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

Возвращает индекс в коллекцию отмеченных элементов. Returns an index into the collection of checked items.

Создает неполную копию текущего объекта Object. Creates a shallow copy of the current Object.

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

Возвращает строку, представляющую текущий объект. Returns a string that represents the current object.

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

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

Описание этого члена см. в разделе IsSynchronized. For a description of this member, see IsSynchronized.

Описание этого члена см. в разделе SyncRoot. For a description of this member, see SyncRoot.

Описание этого члена см. в разделе Add(Object). For a description of this member, see Add(Object).

Описание этого члена см. в разделе Clear(). For a description of this member, see Clear().

Описание этого члена см. в разделе Insert(Int32, Object). For a description of this member, see Insert(Int32, Object).

Описание этого члена см. в разделе IsFixedSize. For a description of this member, see IsFixedSize.

Описание этого члена см. в разделе Remove(Object). For a description of this member, see Remove(Object).

Описание этого члена см. в разделе RemoveAt(Int32). For a description of this member, see RemoveAt(Int32).

Методы расширения

Приводит элементы объекта IEnumerable к заданному типу. Casts the elements of an IEnumerable to the specified type.

Выполняет фильтрацию элементов объекта IEnumerable по заданному типу. Filters the elements of an IEnumerable based on a specified type.

Позволяет осуществлять параллельный запрос. Enables parallelization of a query.

Преобразовывает коллекцию IEnumerable в объект IQueryable. Converts an IEnumerable to an IQueryable.

Урок 30. Изучаем список флажков CheckedListBox

Урок из серии: «Программирование на Visual Basic.NET для школьников»

На этом уроке будет рассмотрен элемент управления Windows Forms CheckedListBox. Он является расширением элемента управления ListBox (Список). Выполняет практически все его функции, а кроме того, в нем может отображаться галочка рядом с элементами списка.

В ходе построения проекта мы создадим компьютерную версию одной из простых головоломок Самуэля Лойда. Лойд – известный американский автор головоломок и шахматных задач – жил и работал во второй половине XIX и в начале XX века.

В этой головоломке используется список флажков и ещё один дополнительный обыкновенный список. Мы научимся обрабатывать помеченные пользователем элементы в списке флажков CheckedListBox, заодно закрепим свои знания по работе с обыкновенным списком ListBox.

Краткая справочная информация

В элементе управления CheckedListBox элементы списка можно выделять цветом, кроме того их можно помечать галочкой.

В отличии от обычного списка, выделить в списке можно только один элемент. Помеченных галочкой элементов может быть несколько.

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

Проект «Головоломка «

Головоломка, которую мы решаем. Из заданного набора чисел надо выбрать те, сумма которых составит 50. Числа такие:

25, 27, 3, 12, 6, 15, 9, 30. 21. 19.

Несмотря на кажущуюся простоту, головоломка может доставить немало хлопот.

Какие элементы управления нам понадобятся?

Во-первых, мы используем список флажков. Он похож на обычный список, но возле каждого пункта имеется флажок. Его можно установить или сбросить.

Еще нам понадобится обычный список, без флажков. В него мы поместим выбранные числа. Сумму этих чисел покажем в виде надписи. Окно нашей программы должно выглядеть примерно так, как показано на рисунке.

    1. Запустите систему Visual Basic и создайте новый проект под именем Головоломка.
    2. Установите на форме элементы управления в соответствии с образцом. Мы уже решили, что нам нужны три элемента управления: список флажков (CheckedListBox), простой список (ListBox) и надпись (Label).
    3. Настройте свойства объектов в соответствии с таблицей:
      Объект Свойства Значения Примечание
      Form1 Text «Головоломка»
      CheckedListBox Text пусто
      Items 25, 27, 3, 12, 6, 15, 9, 30, 21, 19 Щелкните в значении свойства Items (Коллекция), на многоточии, появится окно Редактор коллекции строк. Введите числа по одному в строке.
      ListBox1 Text Пусто
      Label Text «Сумма: 0» Начальное значение суммы выбранных чисел (пока ничего не выбрано).
      Alignment MiddleCenter Выравнивание
      по центру

    Окно программы готово и можно приступить к программированию.

  1. Установка и сброс флажков. В окне программы только один элемент управления способен к диалогу – это список флажков. Программа должна что-то делать только в том случае, если дин из флажков устанавливается или сбрасывается. В этом случае возникает событие ItemCheck (Пометка пункта). Нам надо описать реакцию на него.
    • Щелкните на списке флажков правой кнопкой мыши. Выберите в открывшемся контекстном меню пункт View Code (Просмотреть код)
    • В окне кода выберите в раскрывающемся списке справа событие ItemCheck (Пометка пункта). Система Visual Basic выдаст заготовку процедуры для обработки этого события.

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

    ByVal e As System.Windows.Forms.ItemCheckEventArgs.

    Состояние флажка после изменения состояния флажка хранится в свойстве e.NewValue (Новое значение). Индекс измененной записи хранится в свойстве e.Index.
    Описываем переменные, которые будут использоваться в программном коде:

    Здесь: S — сумма выбранных чисел, i — переменная цикла.
    Теперь нам нужно выяснить, установлен был флажок или сброшен. Оператор проверки состояния флажка должен выглядеть так:

    Из значения свойства ListCount мы вычли единичку потому, что нумерация элементов массива ведется не с единицы, а с нуля.
    Если условие ListBox1.Items(i) = CheckedListBox1.Items(e.Index) истинно, значит, нужный элемент найден. Его номер совпадает с текущим значением переменной i.
    В этом случае надо удалить этот элемент из списка. Это делается при помощи метода RemoveItem.

  2. Теперь наша программа умеет правильно реагировать на установку или сброс флажка в списке.
  3. Обновление суммы. Итак, списки обновлены. Теперь надо заново подсчитать сумму выбранных чисел. Здесь нас ждет небольшой подводный камень. Хотя элементы списка выглядят как числа, они, на самом деле, являются текстовыми строками. Поэтому при суммировании нам придется воспользоваться функцией Val().Это тоже удобно сделать в цикле. Пусть сумма накапливается в переменной S. Ее расчет можно выполнить так:

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

    Читайте также:  Windows не удается найти secpol msc
Оцените статью