2011-02-15 7 views
2

Ext.Net을 사용하여 웹 응용 프로그램을 개발 중입니다.바인딩 콤보 박스

데이터베이스의 콤보 박스를 어떻게 바인딩 할 수 있습니까?

이 내 쿼리입니다 :

dynamic getRegions = (
    from region in db.Regions 
    orderby region.RgnName 
    select region.RgnName); 
+1

가능한 중복 자료는 http://stackoverflow.com/questions/1817403/binding-a-combobox-using-a-datacontext-and-linq-to-sql -이 정보는 도움이 될 수 있습니다. – 5arx

+0

@ 5arx, Ext.Net 컨트롤이 중개자로 'Ext.Net.Store'를 사용하는 것은 아니지만 데이터 바인딩의 일반 원칙은 Ext를 사용하여 결과를 달성 할 수있는 몇 가지 다른 방법이 있지만 약간의 범위에 적용됩니다 .Net (동적로드 클라이언트 측 포함). – Rob

답변

0

그냥 관심이 없으니 여기 <ext:Store>을 사용하지 않고 ComboBox에 데이터를 추가하는 방법을 보여주는 또 다른 빠른 <ext:ComboBox> 샘플이 있습니다. 기본적으로 <asp:DropDownList>을 사용하고 ListItem 개체를 추가하는 것과 같은 기술입니다.

<script runat="server"> 
    protected void Page_Load(object sender, EventArgs e) 
    { 
     if (!X.IsAjaxRequest) 
     { 
      // Add individual Items 
      this.ComboBox1.Items.Add(new ListItem("Region1", "England")); 
      this.ComboBox1.Items.Add(new ListItem("Region2", "Scotland")); 
      this.ComboBox1.Items.Add(new ListItem("Region3", "Wales")); 

      // AddRange alternative 
      // this.ComboBox1.Items.AddRange(new ListItem[] { 
      //  new ListItem("Region1", "England"), 
      //  new ListItem("Region2", "Scotland"), 
      //  new ListItem("Region3", "Wales") 
      // }); 
     } 
    } 
</script> 

<ext:ComboBox ID="ComboBox1" runat="server" /> 

건배!

2

. 예를 들어

<!-- In SamplePage.aspx --> 
<ext:ResourceManager runat="server"></ext:ResourceManager> 
<ext:Store runat="server" ID="Store1">   
    <Reader> 
     <ext:JsonReader IDProperty="Value"> 
      <Fields> 
       <ext:RecordField Name="Key" /> 
       <ext:RecordField Name="Value" /> 
      </Fields> 
     </ext:JsonReader> 
    </Reader> 
</ext:Store> 

<ext:ComboBox runat="server" ID="myCombo" StoreID="Store1" 
    DisplayField="Key" ValueField="Value"> 
</ext:ComboBox> 

 

// In SamplePage.aspx.cs 
protected void Page_Load(object sender, EventArgs e) 
{ 
    var getRegions = new Dictionary<string, string>(); 
    getRegions.Add("Region1", "England"); 
    getRegions.Add("Region2", "Scotland"); 
    getRegions.Add("Region3", "Wales"); 

    Store1.DataSource = getRegions; 
    Store1.DataBind(); 
} 

이 표시된 세 개의 값을 갖는 단일 Ext.Net 콤보 박스를 포함하는 페이지를 초래한다. 필자는 데이터베이스 스키마에 익숙하지 않으므로 이후에 수행 할 작업을 정확히 파악하기 위해이 부분을 추가로 조정해야하지만 올바른 방향으로 사용자를 안내해야합니다.