2010-11-22 4 views
1

フォームロード時にドロップダウンリストに1つのデータベースフィールドを表示するとします。誰も私にそれをする方法を教えてもらえますか?Cのドロップダウンリスト

答えて

4

は、いつものようにあなたのモデルを定義することから始め助けてください:次に

public class Item 
{ 
    public string Id { get; set; } 
    public string Label { get; set; } 
} 

レポジトリ:

public interface IRepository 
{ 
    IEnumerable<Item> GetItems(); 
} 

そして、このリポジトリを実装:

public class MySQLRepository: IRepository 
{ 
    public IEnumerable<Item> GetItems() 
    { 
     using (var conn = new MySqlConnection("SOME CONNECTION STRING")) 
     using (var cmd = conn.CreateCommand()) 
     { 
      conn.Open(); 
      cmd.CommandText = "SELECT id, name FROM items;"; 
      using (var reader = cmd.ExecuteReader()) 
      { 
       while (reader.Read()) 
       { 
        yield return new Item 
        { 
         Id = reader.GetString(0), 
         Label = reader.GetString(1), 
        }; 
       } 
      } 
     } 
    } 
} 

と最終LYデータをフェッチするフォームでこのリポジトリのインスタンスを使用します。

myDDL.DataSource = repository.GetItems(); 
myDDL.DataValueField = "Id"; 
myDDL.DataTextField = "Label"; 
myDDL.DataBind(); 
2

あなたの質問のために

に1- DataTableのデータを取得します。 DataTextField、DataValueField

を設定するステップ1

3-からデータテーブルにリストのデータソースプロパティを設定

2-

関連する問題