2013-06-13 2 views
2

데이터 바인딩은 페이지가 처음으로로드 될 때만 작동하지만 그렇지 않으면 작동하지 않습니다. 내 페이지의 어딘가에, 나는 새 "이름"을 업데이트하고 삽입하고 새로 추가 된 이름을 드롭 다운 목록에 표시하고 싶습니다. 하지만 페이지를 새로 고침하면 새로 추가 된 이름이 드롭 다운 목록에 나타납니다. 드롭 다운의 항목을 새로 고치는 방법은 무엇입니까? 나는 내 코드가 작동해야한다고 생각했다. Pls 도움. 감사합니다asp.net에서 코드 숨김을 사용하여 DropDownList 바인딩

private void RefreshDropDown() 
    { 
     String strConnString = System.Configuration.ConfigurationManager.ConnectionStrings["MyConnectionString"].ConnectionString; 
     SqlConnection con2 = new SqlConnection(strConnString); 
     SqlDataAdapter sda = new SqlDataAdapter(); 
     SqlCommand cmd1 = new SqlCommand("SELECT DISTINCT [Name] FROM [Main] order by Name asc"); 

     cmd1.Connection = con2; 
     con2.Open(); 
     DropDownList1.DataSource = cmd1.ExecuteReader(); 
     DropDownList1.DataTextField = "Name"; 
     DropDownList1.DataValueField = "Name"; 
     DropDownList1.DataBind(); 
     con2.Close(); 

} 
+1

새로 추가 한 항목을 드롭 다운에 표시하지 않으시겠습니까? 당신은 페이지를 새로 고침하고 목록에 이름이 나타날 때 이렇게 말합니다. – DevelopmentIsMyPassion

+1

DropDownList1.Items.Clear(); – choz

+0

페이지 수명주기 중 어떤 이벤트를 호출하고 있습니까? – Smeegs

답변

1

새로운 이름을 삽입하기 위해 어떤 종류의 버튼이 있다고 가정합니다. 새 이름을 삽입/업데이트 한 후에이 단추를 클릭하면 RefreshDropDown()에 대한 호출이 추가됩니다. 그 트릭을해야합니다.

관련 문제