2012-09-14 4 views
2

내가하려는 것은 첫 번째 드롭 다운을 선택하면 다음 드롭 다운에서 선택한 항목이 제거됩니다. 그래서, 만약 당신이 데이터가 있다면 : A, B, C, D, E, F, G, H, 하나의 드롭 다운에서 B를 선택하면 다음 드롭 다운에서 첫 번째 드롭 다운에서 A, C, D , E, F, G, H, I 등 최대 7 개의 드롭 다운까지. 나는 asp.net에서 이것을 접근하는 가장 좋은 방법이 무엇인지 모른다. ??다른 드롭 다운 목록에서 항목을 선택하면 드롭 다운 목록에서 항목을 비활성화하는 방법은 무엇입니까?

+0

하지만 모든 7 드롭 다운에서 얻을 할을 가질 수 있습니다 시도에 대한 몇 가지 빛을 넣어주세요 그건 .. 내가 당신이 항목을 해제하거나 드롭 다운에서 그 항목을 제거하고 싶지 않다는 것입니다 – user1102001

+0

그냥 드롭 다운 목록에서 다음 이벤트에 대한 해당 항목을 해제하고 싶습니다. – akirah

답변

0

DropDownList의 SelectedIndexChanged 이벤트를 처리하여 항목이 선택되었을 때를 결정한 다음 다른 DropDownLists의 항목을 반복하여 원하는 항목을 제거해야합니다. 예 :

void DropDownListOne_SelectedIndexChanged(object sender, Eventargs e) 
{ 
    ListItem selectedItem = DropDownListOne.SelectedItem; 

    foreach(ListItem item in DropDownListTwo.Items) 
    { 
     if(item.Value == selectedItem.Value) 
     { 
      DropDownListTwo.Items.Remove(item); 
     } 
    } 
} 
0

? 당신이 배열로 문자가있는 경우이

ListItem item = d1.Items.FindByText(d1.SelectedValue); 
d2.Items.Remove(item); 

, 당신은

string[] letters = new string[] {"A","B","C"}; 

string d1SelValue = d1.SelectedValue; 

d2.DataSource = letters.Where(l => l != d1SelValue).ToArray(); 
d2.DataBind(); 
관련 문제