2017-04-07 16 views
1

をテキストボックスにデータを取得する私のコードですが、私はreal IDdropdownlist.selectedvalueを交換するときにはうまく機能し、私はドロップダウンリストから別のIDを選択するとき、私はこの変更を必要とする:は、ドロップダウンリストの選択に応じて、ここで

protected void Page_Load(object sender, EventArgs e) 
{ 

    SqlCommand com = new SqlCommand("select * from UsersTable where UserName='" + DropDownListUsers.SelectedValue + "'", conn); 
    try 
    { 
     conn.Open(); 

     using (SqlDataReader red = com.ExecuteReader()) 
     { 
      while (red.Read()) 
      { 
       TextBoxpass.Text = (red["password"].ToString()); 
       TextBoxFname.Text = (red["Fname"].ToString()); 
       TextBoxLname.Text = (red["Lname"].ToString()); 
       TextBoxAddress.Text = (red["Address"].ToString()); 
       TextBoxPhone.Text = (red["PhoneNo"].ToString()); 
       TextBoxEmail.Text = (red["Email"].ToString()); 
       TextBoxpass.Text = (red["password"].ToString()); 
      } 
     } 
    } 

    finally 
    { 
     conn.Close(); 
    } 
} 

答えて

0

だけ.ToString()を追加します。

DropDownListUsers.SelectedValue.ToString(); 

と@Hungはあなたが

+0

おかげで上記のコードの前に

DropDownListUsers.SelectedIndex = 0; 

または任意のデフォルト値を入れてください、ページの読み込みに入れたい場合は、それがうまく働いた<言ったようにしてください3 –

0

コードをより良くするためにここで行う必要のあることがいくつかあります。

あなた DropDownListUserschangedイベントではないページのロードにあなたの上記のコードをバインドする必要があるか、ページのロードに入れたいならば、あなたはあなたのドロップダウンのデフォルト選択値を指定する必要があります。

//server side code 
protected void DropDownListUsers_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    //code here 
} 
//Your markup 
OnSelectedIndexChanged="ddlCompany_SelectedIndexChanged" AutoPostBack="True" 

使用パラメータ化クエリhttps://msdn.microsoft.com/en-us/library/bb738521(v=vs.100).aspx

関連する問題