Итак, у меня есть настройка списка, в которой есть несколько имен библиотек внутри, когда вы запускаете программу, и когда она выбрана, поэтому я сделал это, чтобы получить содержимое выбранного элемента.C# .IndexOf Arraylist возвращает -1
Тогда я хотел узнать, где в arraylist я установил, что эта строка появляется, поэтому я использовал это.
Libraries tempLibrary = (Libraries)LibrariesAndBooks[index];
Как вы можете видеть на скриншоте ниже принято, когда программа достигла ошибки он находится в индексе [0] не -1, почему это происходит?
screenshot http://image.prntscr.com/image/4f8b31c2bc71419f9eff4cd98f34ef13.png
жестко прописывать Также будет 0 не вариант для того, что мне нужно делать, и если я сделал глупую ошибку или мой код делает вы хотите бросить то отлично, потому что я только в моем первый год университета, и по какой-либо причине он не делал никакого кода в 6-й форме, так что этого следовало ожидать.
'selectedItem' - это строка, но ваш список содержит объекты класса. Использование 'IndexOf' не будет работать таким образом, поскольку оно не знает, к чему он должен сравнивать строку (он даже не знает, что он должен сравнивать строку с членом объекта), см. [Документация ] (https://msdn.microsoft.com/en-us/library/7w3e62a8 (v = vs.110) .aspx). – UnholySheep