2014-04-27 6 views
-2

친구 ..는 내가 도움이 필요

내가

가 나는 ... 당신이 그 두 가지를 마크 업 보여

<asp:DropDownList ID="DropDwonList1" runat="server"> 
<asp:ListItem Text="--Select Region--" Selected="True"></asp:ListItem> 
<asp:ListItem Text="HollyWood" Value="HollyWood"></asp:ListItem> 
    <asp:ListItem Text="BollyWood" Value="BollyWood"></asp:ListItem> 
<asp:ListItem Text="Farance" Value="Farance"></asp:ListItem> 
</asp:DropDownList> 

DropDwonList2

가 DB와 바인더 제본되어 내 프로젝트에 4 DropDownList로가 작동하는 방법의 SelectedIndexChanged

<asp:DropDownList ID="DropDwonList2" runat="server" /> 

내가 DropDwonList1 DropDwonList2에서 할리우드를 선택하면 내가 원하는 단지 할리우드를 보여줍니다 액터 이름 boolyWood를 선택하면 DropDwonList2에는 볼리우드 액터 이름 만 표시됩니다.

public void BindDDL_ActorName_RegionOne() 
{ 
    string query = "Select ID, Actor_Name from Actor where Region_Id=1"; 
    SqlConnection con = new SqlConnection(conStr); 
    SqlDataAdapter da = new SqlDataAdapter(query, con); 
DataTable dt = new DataTable(); 
da.Fill(dt); 
DropDwonList2.DataSource = dt; 
DropDwonList2.DataTextField = "Name"; 
DropDwonList2.DataValueField = "ID"; 
DropDwonList2.DataBind(); 
DropDwonList2.Items.Insert(0, new ListItem("--Select Name--")); 
} 

public void BindDDL_ActorName_RegionTwo() 
{ 
    string query = "Select ID, Actor_Name from Actor where Region_Id=2"; 
SqlConnection con = new SqlConnection(conStr); 
SqlDataAdapter da = new SqlDataAdapter(query, con); 
DataTable dt = new DataTable(); 
da.Fill(dt); 
DropDwonList2.DataSource = dt; 
DropDwonList2.DataTextField = "Name"; 
DropDwonList2.DataValueField = "ID"; 
DropDwonList2.DataBind(); 
DropDwonList2.Items.Insert(0, new ListItem("--Select Name--")); 
} 

public void BindDDL_ActorName_RegionThree() 
{ 
    string query = "Select ID, Actor_Name from Actor where Region_Id=3"; 
SqlConnection con = new SqlConnection(conStr); 
SqlDataAdapter da = new SqlDataAdapter(query, con); 
DataTable dt = new DataTable(); 
da.Fill(dt); 
DropDwonList2.DataSource = dt; 
DropDwonList2.DataTextField = "Name"; 
DropDwonList2.DataValueField = "ID"; 
DropDwonList2.DataBind(); 
DropDwonList2.Items.Insert(0, new ListItem("--Select Name--")); 
} 

나는이 기능을 활성화하려면 "의 SelectedIndexChanged"이벤트를 발견했다. 하지만 지금까지는 해본 적이없는이 이벤트에 대해 말하지 않습니다.

코드로 몇 가지 예를 넣으면 어떻게 작동하는지 알 수 있습니다.

답변

0

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.listcontrol.selectedindexchanged(v=vs.110).aspx

당신은 너무 당신이 것 당신의 C# 코드에서

<asp:DropDownList ID="DropDwonList1" runat="server" OnSelectedIndexChanged="Index_Changed" AutoPostBack="true"> 

과 같을 것이다 당신의

<asp:DropDownList ID="DropDwonList1" runat="server"> 

OnSelectedIndexChanged="Index_Changed" 
AutoPostBack="true" 

를 추가해야합니다 당신이

if(DropDwonList1.SelectedValue.Text.Equals("HollyWood")){ 
    BindDDL_ActorName_RegionOne(); 
} 

처럼 뭔가를하고/다른 문이 남아있는 선택을 완료하면 다음 분명히 단지 다른 쓸 수있는 논리를 들어이 인덱스 변경

protected void Index_Changed(Object sender, EventArgs e) { 
    //Put logic to figure out what needs to be selected 
} 

을하는 기능을 추가합니다.

+1

또한 선택을 즉시 수행하려는 경우 자동 멈춤 기능 만 필요합니다. 여러 개의 드롭 다운을 변경하고 각 변경 사항으로 페이지를 다시로드하지 않으려면 false로 설정하고 단추 또는 다른 요소를 사용하여 다시 게시를 트리거해야하는 상황이있는 경우 – Newyork167

+0

대단히 감사합니다. – fungus

관련 문제