C # захватить текст с первого элемента в списке в представлении сведений - PullRequest
2 голосов
/ 05 мая 2011

У меня есть представление списка (в представлении сведений), которое заполняется динамически. Я хочу получить текст из первого элемента в списке. Этот код не работает

lstSalesppl.Items[0].Selected = true;
string teamLeader = lstSalesppl.SelectedItems[0].Text;

Я получаю сообщение об ошибке во второй строке: Неверный аргумент = значение '0' недопустимо для 'индекса', однако тот же код работает в другом методе, когда элемент списка просмотра дважды щелкается

Может кто-нибудь сказать мне, что я делаю не так?

Спасибо

1 Ответ

2 голосов
/ 05 мая 2011

попробуйте использовать

lstSalesppl.Items[0].Text

вместо

lstSalesppl.SelectedItems[0].Text;

lstSalesppl.SelectedItems, возможно, не привязан к атрибуту Selected


Свойство ListView.SelectedItems

Свойство SelectedItems не будет содержать никаких элементов, если к этому свойству обращаются до создания дескриптора ListView , что обычно происходит при первоначальной загрузке ListView.для отображения в форме.Вы можете проверить, создан ли дескриптор с помощью свойства IsHandleCreated .Если для свойства MultiSelect установлено значение true, это свойство возвращает коллекцию, содержащую элементы, выбранные в ListView.Для ListView с одиночным выбором это свойство возвращает коллекцию, содержащую единственный выбранный элемент в ListView.Для получения дополнительной информации о задачах, которые могут быть выполнены с элементами в коллекции, см. ListView.SelectedListViewItemCollection.

...