iampradeepsharma Ответов: 4

как узнать, выбран ли элемент в представлении списка


всем привет ,
если элемент в listview выбран, то нужно знать, выбран ли какой-либо элемент ..
Я попытался с помощью мыши listview1.Свойство selecteditems.Count и listview1.SelectedIndices.Считайте, но каждый раз, когда он дает счет до 0 после выбора элемента ...

спасибо! ,

4 Ответов

Рейтинг:
30

prot0col

Вы можете сделать что-то вроде этого:

foreach listview itm yourListView.Items)
{
   if(itm.selected)
   {
    Add in a string, its id or name or whatever
   }
}


iampradeepsharma

Спасибо за ответ, но нет такого свойства, как selected на элементе listview ...

[no name]

вы делаете то же самое с javascript?Is должен работать в javascript, если вы делаете это в c#, то сделайте что-то вроде этого :
Струнный стритем;
по каждому элементу(объекту элемент в listbox1.Свойство selecteditems)
{
strItem = selecteditem как строка;
Система.Диагностика.Отлаживать.WriteLine(strItem);
}

Рейтинг:
21

erogaki

охраняемых недействительными ListBox1_SelectedIndexChanged(объект отправителя, EventArgs в электронной)
{
по каждому элементу (литий listitem элемент в listbox1.Предметы)
{
если (литий.Некоторые)
{
Этикетка 1.Текст = li.Text.Метод toString();
}
}
}

под номером 1 будет отображать выбранный элемент


Рейтинг:
18

BillWoodruff

Предположим, что режим выбора списка является Мультипростым или Многоэкстендированным: в противном случае, конечно, это не имеет смысла :)

Определите новую коллекцию SelectedObjectCollection, а затем инициализируйте ее в событии загрузки формы:

private ListBox.SelectedObjectCollection ListBoxSelections;

private void Form1_Load(object sender, EventArgs e)
{
    // initialize it here because prior to Form Load
    // a reference to the instance of listBox1 does
    // not exist to pass as a parameter

    // why initialize it ?
    // so we don't have to check if it's == null
    // when no items are selected and we want to
    // do something like access the 'Count property
    ListBoxSelections = new ListBox.SelectedObjectCollection(listBox1);
}
Затем "подключите" событие SelectedIndexChanged к вашему списку:
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
    ListBoxSelections = listBox1.SelectedItems;
}
И теперь в любое время, когда вам нужно что-то сделать с выбранными элементами в списке, вы можете просто использовать 'ListBoxSelections: если его свойство 'Count == #0, вы знаете, что текущие элементы не выбраны.


Рейтинг:
1

YOUSEF ZAREIE

// Loop through all items the ListBox.
   for (int x = 0; x < listBox1.Items.Count; x++)
   {
      // Determine if the item is selected.
      if(listBox1.GetSelected(x) == true)
         // Deselect all items that are selected.
         listBox1.SetSelected(x,false);      
      else
         // Select all items that are not selected.
         listBox1.SetSelected(x,true);
   }


Kats2512

необъяснимый дамп кода к такому старому сообщению не очень поможет.