none
Мультивыбор в ListView RRS feed

  • Вопрос

  • Добрый вечер. Подскажите пожалуйста

    Как выбрать несколько Item или Index у ListView

                LSTVList2.ItemsSource = obsList1;
    
    
                List<int> lst = new List<int> { 1, 2 };
    
    
                foreach (var item in lst)
                {
    
                    //(LSTVList2.ItemContainerGenerator.ContainerFromIndex(item) as ListViewItem).IsSelected = true;
                    //LSTVList2.SelectedIndex = item;
                    //LSTVList2.Items.IndexOf(0);
                }

    Спасибо за помощь

    18 июня 2016 г. 16:42

Ответы

  •  

    Можно так

    foreach (var  item in LSTVList2.Items)
        {
          LSTVList2.SelectedItems.Add(item);
        }

    или добавить определённое  условие 

    	int i = 0;
                foreach (var item in LSTVList2.Items)
                {
                    if (i % 2 == 0)
                        LSTVList2.SelectedItems.Add(item);
                    i++;
                }


    • Изменено Azat Tazayan 18 июня 2016 г. 20:11
    • Предложено в качестве ответа Liliya Muray 19 июня 2016 г. 7:10
    • Помечено в качестве ответа DevingAs 19 июня 2016 г. 8:06
    18 июня 2016 г. 20:10

Все ответы

  • Добрый вечер.

    Для ListView установите свойство SelectionMode="Extended" если хотите выбрать Item-ы с нажатой клавишей "Ctrl" или SelectionMode="Multiple" в этом случае у кажного Item-a появляется CheakBox для выбора .После этого можно использовать цикл 

     foreach (ListViewItem item in LSTVList2.SelectedItems)
      {
         var m = item;
      }


    18 июня 2016 г. 19:35
  • Добрый вечер.

    SelectionMode="Multiple" в xaml стоит.

    Мне нужна обратная процедура.

    Уточню.

    Необходимо в коде выбрать несколько Item - ов. Не мышкой.


    • Изменено DevingAs 18 июня 2016 г. 19:56
    18 июня 2016 г. 19:55
  •  

    Можно так

    foreach (var  item in LSTVList2.Items)
        {
          LSTVList2.SelectedItems.Add(item);
        }

    или добавить определённое  условие 

    	int i = 0;
                foreach (var item in LSTVList2.Items)
                {
                    if (i % 2 == 0)
                        LSTVList2.SelectedItems.Add(item);
                    i++;
                }


    • Изменено Azat Tazayan 18 июня 2016 г. 20:11
    • Предложено в качестве ответа Liliya Muray 19 июня 2016 г. 7:10
    • Помечено в качестве ответа DevingAs 19 июня 2016 г. 8:06
    18 июня 2016 г. 20:10