Chekedlistbox

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

maxim_vassilyev
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 31.01.2007 (Ср) 20:08
Откуда: Томск

Chekedlistbox

Сообщение maxim_vassilyev » 31.01.2007 (Ср) 20:17

Вопрос такой:
Допустим имеется список с данными. Как сделать так, чтобы при отметки какого-либо эллемента, он копировался в текстовое(multiline) поле, а при снятии его он от туда удалялся?

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 01.02.2007 (Чт) 8:36

Простой вариант навскидку:

Код: Выделить всё
Private Sub OnSelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles chkList.SelectedIndexChanged
        Dim sText As String = String.Empty
        For Each obj As Object In chkList.CheckedItems
            sText &= chkList.GetItemText(obj) & vbCrLf
        Next
        txtList.Text = sText
End Sub


Предполагается, что chkList это список, а txtList текстовое поле. Можно доработать и улучшить...
Весь мир матрица, а мы в нем потоки байтов!

maxim_vassilyev
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 31.01.2007 (Ср) 20:08
Откуда: Томск

Сообщение maxim_vassilyev » 05.02.2007 (Пн) 22:35

Спасибо. А теперь такой вопрос:
Есть ли у CheckedListBox такое свойство Cheked=True/False как в VB6 только для одного эллемента? Свойство CheckedItems конечно хорошее, но мне нужно определить только один выбранный эллемент

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 06.02.2007 (Вт) 8:28

Есть свойство SelectedIndex для выбранного элемента. А вот свойства для выделенного элемента нет. Ибо выбранным может быть только один элемент (или ни одного), а вот выделенных может быть много.
Весь мир матрица, а мы в нем потоки байтов!

Lexa
Новичок
Новичок
 
Сообщения: 29
Зарегистрирован: 17.11.2005 (Чт) 0:13
Откуда: Тверь

Сообщение Lexa » 12.02.2007 (Пн) 17:46

Спасибо. А теперь такой вопрос:
Есть ли у CheckedListBox такое свойство Cheked=True/False как в VB6 только для одного эллемента? Свойство CheckedItems конечно хорошее, но мне нужно определить только один выбранный эллемент


Может помогут GetItemChecked и SetItemChecked ?

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 12.02.2007 (Пн) 18:16

Это в принципе тоже самое, что и CheckedItems, только придется перебирать все элементы списка, дабы определить выделенные. Можно еще и GetItemState заюзать с тем же успехом.

Фишка здесь в том, что в CheckedListBox может быть НЕСКОЛЬКО отмеченных элементов
Весь мир матрица, а мы в нем потоки байтов!

Lexa
Новичок
Новичок
 
Сообщения: 29
Зарегистрирован: 17.11.2005 (Чт) 0:13
Откуда: Тверь

Сообщение Lexa » 13.02.2007 (Вт) 19:03

Фишка здесь в том, что в CheckedListBox может быть НЕСКОЛЬКО
, а в ВБ6 Checked не свойство в коллекции Item, мда ... ВБ нет ВБ6, идёт атрофирование мозга. :cry:

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 14.02.2007 (Ср) 8:30

Lexa писал(а):
Фишка здесь в том, что в CheckedListBox может быть НЕСКОЛЬКО
, а в ВБ6 Checked не свойство в коллекции Item, мда ... ВБ нет ВБ6, идёт атрофирование мозга. :cry:


и зачем здесь бессмысленный флудотреп?
Весь мир матрица, а мы в нем потоки байтов!


Вернуться в Visual Basic .NET

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex-бот и гости: 37

    TopList