2011-03-23 7 views
0

안녕하세요 도시 데이터베이스에서 콤보 상자를 채우려 고 시도하지만 선택 메뉴 맨 위에 대도시가 생깁니다. 나는이 접근 방식을 사용 했습니까? 지하철의 경우상단의 대도시와 콤보 상자 채우기

:

  List<Lst_City> lstCity= new List<Lst_City>(); 
      lstCity = new BFCommon().getCities(); 
      lstCity[0].CityID = 474; 
      lstCity[0].CityNM = "Mumbai"; 
      lstCity[1].CityID = 199; 
      lstCity[1].CityNM = "Delhi"; 
      lstCity[2].CityID = 165; 
      lstCity[2].CityNM = "Chennai"; 
      lstCity[3].CityID = 384; 
      lstCity[3].CityNM = "Kolkata"; 
      lstCity[4].CityID = 582; 
      lstCity[4].CityNM = "Pune"; 
      lstCity[5].CityID = 71; 
      lstCity[5].CityNM = "Bangalore"; 
      lstCity[6].CityID = 306; 
      lstCity[6].CityNM = "Hyderabad"; 
      lstCity[7].CityID = 11; 
      lstCity[7].CityNM = "Ahmedabad"; 

드롭 다운 바인딩 :

ddCities.DataSource = lstCity; 
ddCities.DataTextField = "CityNM"; 
ddCities.DataValueField = "CityID"; 
ddCities.DataBind(); 
ddCities.Items.Insert(0, new ListItem("Select One", string.Empty)); 

검색어 :

public List<Lst_City> getCities() 
     { 
      List<Lst_City> temp = (from e in objCommonDataContext.Lst_Cities 
             where e.inUse == true 
             select e).ToList(); 

      return temp; 

     } 

와 디자이너의 콤보 상자

<div class="row"> 
    <label> 
    City :</label> 
    <ajaxToolkit:ComboBox ID="ddCities" runat="server" AutoPostBack="False" 
    DropDownStyle="DropDownList" 
    AutoCompleteMode="SuggestAppend" 
    CaseSensitive="False" 
    CssClass="" 
    ItemInsertLocation="Append" Width="380px"></ajaxToolkit:ComboBox> 

목적을 달성하고 있지만 하드 코딩되고 항목이 반복되므로 이상적이지 않습니다.

답변

0

모든 도시가 테이블에있는 것 같습니다. 나의 제안은 다음과 같습니다 이제 마지막으로 당신이했던 것처럼 lstCity과 드롭 다운의 데이터 소스를 설정 채울 새 열이 IsMetropolital

List<Lst_City> temp = (from e in objCommonDataContext.Lst_Cities 
             where e.inUse == true && e.IsMetropolital==false 
             select e).ToList(); 

List<Lst_MetroCity> tempMetro = (from e in objCommonDataContext.Lst_Cities 
             where e.inUse == true && e.IsMetropolital=true 
             select e).ToList(); 

List<Lst_City> lstCity= new List<Lst_City>(); 


foreach(var t in tempMetro) 
{ 
    // Add cities to the lstCity 
} 

foreach(var t in temp) 
{ 
    // Add cities to the lstCity 
} 

수 있습니다 추가합니다.

+0

우리가 영향을 미치기 때문에 나는 테이블을 바꾸고 싶지 않기 때문에 우리는 이것을 별개로 할 수 있습니다. – abhijit

관련 문제