Почему SelectedItems отсутствуют в IntelliSense на ListBox? - PullRequest
0 голосов
/ 13 декабря 2011

Я что-то здесь упускаю?Я не могу найти свойство SelectedItems в ListBox элементе управления.Я пытаюсь перебрать выбранные элементы в нем.И да, свойство SelectionMode установлено на множественное значение, не то чтобы оно имело значение.

Почему я не могу "увидеть" свойство?

Ответы [ 2 ]

3 голосов
/ 13 декабря 2011

Важно: Я принял это за вопрос Windows Forms.Следующее не верно для System.Web.UI.WebControls.ListBox.Речь идет о Windows Forms ListBox

Она существует , но помечена

[BrowsableAttribute(false)]

, поэтому IntelliSense не покажет ее вам, ноВы можете использовать его в любом случае.


Правильное решение, которое также работает для ASP.NET System.Web.UI.WebControls.ListBox:

var selectedItems = from item in myListBox.Items.OfType<ListItem>()
                    where item.Selected;
1 голос
/ 23 января 2012

Благодаря Noah1989 свойство SelectedItems в недоступно *1003*, доступное в WebForms. Чтобы преодолеть это, просто переберите все элементы в списке и спросите, выбраны ли они:

ListItemCollection collection = new ListItemCollection();
            foreach (ListItem item in ListBox1.Items)
            {
                if (item.Selected)
                    collection.Add(item);
            }

или, как сказал Ной, просто используйте LINQ: from item in items where item.IsSelected

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...