2011-06-22 13 views
2

簡単な質問。値とテキストをマークアップのドロップダウンにバインドするのは簡単ですが、C#でこれをどうすればできますか?単一列のコレクションLINQを使用してC#でドロップダウンするバインド値と範囲

_dd_City.DataSource = LNQ.tbl_cities.Select(a => a.desc); 
_dd_City.DataBind(); 

をバインドする

しかし、私はそれを行うことができるか、私は整数値と都市名のテキストに値を設定したいと言います?

_ddCity.DataTextField = "desc"; 
_ddCity.DataValueField = "Id"; 
_dd_City.DataSource = LNQ.tbl_cities.Select(a => new { a.Id, a.desc}); 
_dd_City.DataBind(); 

あなたのマークアップにテキストと値フィールドを設定することができます:あなたはちょうどこのようなテキストと値のために使用されますあなたのコレクション内のオブジェクトからプロパティの名前を指定する必要が

答えて

1

あまりにも。

<asp:DropDownList ID="_ddCity" runat="server" DataValueField="Id" DataTextField="desc"> 
</asp:DropDownList> 
0

あなたの街のオブジェクトは、 "ID" と "CityName" と呼ばれるメンバーを持っている、あなただけのDataBindを呼び出す前にこれを行うだろうと言う。

   _dd_City.DataTextField = "CityName"; 
       _dd_City.DataValueField = "Id"; 
0
_dd_City.DataValueField="value" 
_dd_City.DataTextField="key" 
_dd_City.DataSource = LNQ.tbl_cities.Select(a => new {value=a.desc, key=a.id}); 
_dd_City.DataBind();