2010-10-18 2 views
0

Иам используя выпадающий список, в том, что я с 4 значения, следующие мои ценностиКак найти индекс заданного строкового значения в раскрывающемся списке?

  • Uk-L1
  • Us-L1B
  • Aus-BUssness
  • Uk-HSMP

и здесь мне нужно выбрать конкретное значение в качестве выбранного индекса, и я сделал это для точного значения, и в моем требовании я передам только значения после этого '-' .so что мне нужно получить значение быть выбранным и здесь я использую следующий код, чтобы выбрать, что он не работает, может кто-нибудь помочь в этом.

Код:

DropList.SelectedIndex = DropList.Items.IndexOf(DropList.Items.FindByValue("L1")); 

Спасибо.

ответ

6

Вы могли бы попробовать установить выбранное значение:

DropDown.SelectedValue = DropDown.Items 
    .OfType<ListItem>() 
    .Where(l => l.Value.EndsWith("-L1B")) 
    .First() 
    .Value; 

И если вы хотите, чтобы проверить, существует ли значение ранее (метод расширения First() будет сгенерировано исключение, если значение не найдено):

var item = DropDown.Items 
    .OfType<ListItem>() 
    .Where(l => l.Value.EndsWith("-L1B")) 
    .FirstOrDefault(); 

DropDown.SelectedValue = (item != null) ? item.Value : null; 
+0

Спасибо, чувак ... он отлично работает – Prabhakaran

+0

Это экономит так много хлопот! –

Смежные вопросы