Добавление нового значения в раскрывающийся список

У меня есть раскрывающийся список, который имеет одно из значений для других. Я хочу переместить это значение до последнего. Пожалуйста, помогите мне с этим. Код, который я использую, выглядит следующим образом

ddlAssetsCountryOthersone.DataSource = lstIMAssetsByCountryOthers; ddlAssetsCountryOthersone.DataTextField = "AssetDescription"; ddlAssetsCountryOthersone.DataValueField = "AssetDescription"; ddlAssetsCountryOthersone.DataBind(); ddlAssetsCountryOthersone.Items.Remove( ddlAssetsCountryOthersone.Items.FindByValue( Constants.PhilosophyAndEmphasis.Other.ToString())); 

Как я могу добавить остальных в раскрывающийся список в последнем

попробуйте это после вашей привязки данных:

 ddlAssetsCountryOthersone.Items.Add(new ListItem("Others", "Others")); 

Кстати, если вы используете метод Insert, вы можете вставить элемент, который вы хотите, в нужную позицию. Например, приведенный ниже код добавляет параметр «Другой» в 4-й порядок:

 ddlAssetsCountryOthersone.Items.Insert(4, new ListItem("Others", "Others")); 

вы можете попробовать

 ListItem li = new ListItem("text", "value"); yourDropdown.Items.Insert(yourDropdown.Items.Count, li); 

Если у вас есть 5 элементов в раскрывающемся списке, оно вернет 5, так как индекс вставки начинается с 0

Если вы выпадающий список привязаны к базе данных, вы не сможете добавлять элементы в свой элемент управления после вызова DataBind() , и если вы добавите их до того, как они будут очищены в любом случае, вы вызываете DataBind() .

Вы можете использовать Insert или Add после того, как происходит привязка данных, и вы можете указать индекс элемента, который вы вставляете. Insert используется для вставки в определенном месте, Add добавляется к нижней части, как в вашем случае:

 //after databind //example with insert - (-1 as list is zero based) ddlMyList.Items.Insert(noOfItems-1, "Other"); 

ИЛИ ЖЕ

 //add ddlMyList.Items.Add("Other"); 

Или же:

 ListItem li = ddlAssetsCountryOthersone.FindByValue(Constants.PhilosophyAndEmphasis.Other.ToString())); ddlAssetsCountryOthersone.Remove(li); ddlAssetsCountryOthersone.Add(li); 

Это должно работать, пожалуйста, проверьте – и замените Add with Insert в соответствии с предложением JohnIdol …

При привязке данных гораздо проще добавлять / удалять элементы из списка, который является привязкой данных, чем добавлять / удалять элементы после того, как происходит привязка данных.

Я бы создал оболочку вокруг lstIMAssetsByCountryOthers которая вносит необходимые изменения в новый IEnumberable и возвращает этот новый объект для привязки данных.