asp.net проблема

#asp.net

Вопрос:

 selectCourseList.SelectedIndex=Convert.ToInt32(selectCourseList.Items.FindByValue(newStudentCourseId));
 

выдача следующей ошибки
Не удается привести объект типа ‘System.Web.UI.WebControls.Система ListItem» для ввода».Иконописный».

я не понимаю, что с этим не так

Комментарии:

1. На самом деле, я не понимаю, что ты хочешь сделать? будьте конкретным, пожалуйста

2. у меня есть недавно добавленный идентификатор курса для студентов «newStudentCourseId» в строковой форме, и у меня есть окно списка, в котором я хочу установить выбранный индекс курса для новых студентов, добавленных в идентификатор курса

Ответ №1:

 selectCourseList.Items.FindByValue(newStudentCourseId)
 

Вышесказанное вернет вам список, поэтому вы не сможете использовать преобразование.ToInt32, а затем установите индекс так, как вы описываете.

Вместо этого попробуйте:

 selectCourseList.Items.FindByValue(newStudentCourseId).Selected = true;
 

Ответ №2:

Выберите курс.Товары.FindByValue(newStudentCourseId) возвращает некоторый объект, который не поддерживает систему.Конвертируемый интерфейс — так что конвертируйте.Сбой вызова ToInt32

Какой тип объектов находится в selectCourseList.Предметы ?

Ответ №3:

Вы не можете преобразовать элемент списка в int. Попробуй:

 selectCourseList.SelectedIndex=selectCourseList.Items.IndexOf(selectCourseList.Items.FindByValue(newStudentCourseId));
 

Ответ №4:

Вы уверены, что значение элемента является типом int? Вы уверены, что метод FindByValue не возвращает значение null для вашего параметра newStudentCourseId

Комментарии:

1. найдите по значению строковый параметр talkes, поэтому я преобразовал его в строковый тип, когда получал тип int … но я преобразовал его в тип int с помощью convertToInt32, но безрезультатно, что не так, я не понимаю, но у меня есть решение моей проблемы, увидев приведенное выше решение, но можете ли вы сказать, что в этом не так

Ответ №5:

Я думаю, что-то вроде (не проверено):

 selectCourseList.SelectedIndex=-1;
selectCourseList.Items.FindByValue(newStudentCourseId).Selected = true;
 

где newStudentCourseId-это строка, представляющая значение элемента вашего выпадающего списка.

Комментарии:

1. найдите по значению строковый параметр talkes, поэтому я преобразовал его в строковый тип, когда получал тип int … но я преобразовал его в тип int с помощью convertToInt32, но безрезультатно, что не так, я не понимаю, но у меня есть решение моей проблемы, увидев приведенное выше решение, но можете ли вы сказать, что в этом не так

Ответ №6:

Конечно, вам нужно;

 selectCourseList.SelectedIndex=selectCourseList.IndexOf(selectCourseList.Items.FindByValue(newStudentCourseId));