2010-11-22 2 views
1

Я хочу показать одно поле базы данных в раскрывающемся списке при загрузке формы. может ли кто-нибудь сказать мне, как это сделать.dropdownlist in 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- Fetch данные в DataTable.

2- Установите DataSource свойство списка к DataTable с шага 1

3- Набор DataTextField, DataValueField

Смежные вопросы