2015-12-29 4 views
0

Привет, как я могу узнать, как отображать данные из выпадающего списка в текстовое поле? я только могу это сделать для имени и id, но не могу сделать то же самое по моей цене.Отобразить выпадающий список данных в текстовое поле

для exmaple, когда я выбираю оранжевый из раскрывающегося списка, идентификатор, имя и цена будут отображаться в их отдельном текстовом поле. благодаря !

protected void Page_Load(object sender, EventArgs e) 
{  
    if (Page.IsPostBack == false) 
    { 
     bindDropDownList();  
    } 
} 

private SqlDataReader getReader() 
{ 
    string strConnectionString = ConfigurationManager.ConnectionStrings["Yasha"].ConnectionString; 
    SqlConnection myConnect = new SqlConnection(strConnectionString); 

    string strCommandText = "SELECT productID, productName, productPrice from Product"; 

    SqlCommand cmd = new SqlCommand(strCommandText, myConnect); 

    myConnect.Open(); 
    SqlDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection); 
    return reader; 
} 

private void bindDropDownList() 
{ 
    ddlProduct.DataSource = getReader(); 
    ddlProduct.DataTextField = "productName"; 
    ddlProduct.DataValueField = "productID";  
    ddlProduct.DataBind(); 
} 

protected void ddlProduct_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    tbProductID.Text = ddlProduct.SelectedValue.ToString(); 
    tbProduct.Text = ddlProduct.SelectedItem.Text; 
    tbPrice.Text = ?; 
} 

ответ

0

Вы можете сделать вызов БД в вашем SelectedIndexChanged случае, или вы могли бы сохраняться данные, возвращаемые из getReader (в другой форме - словарь PRODUCTID, цена) в ViewState запросить в вашем SelectedIndexChanged случае.

Лично я бы избегал ViewState и сделал легкий звонок на ваш дБ с помощью ProductId, чтобы получить стоимость.