だからここに私の状況があります: 特定のイベントがトリガーされたときに入力する DropDownList があります。データを入力するために、ID と名前の 2 つの列を返す SQL クエリを実行します。DataSource/DataTextField/DataValueField を使用して Name を DropDownList にバインドしますが、ID も保存したいと思います (2 番目のクエリで使用するため)。これどうやってするの?
ID を非表示の入力フィールドに保存しようとしましたが、ID を使用したいがユーザーには表示したくないためです。しかし、input は ListControl ではないため、機能しません。DropDownList で選択された名前の一致する ID を取得するにはどうすればよいですか?
string strConn = ConfigurationManager.ConnectionStrings["ConnectionStringName"].ConnectionString;
SqlConnection con = new SqlConnection(strConn);
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandType = CommandType.Text;
cmd.CommandText = "SELECT Id, Name FROM Users WHERE Age > 10";
DataSet objDs = new DataSet();
SqlDataAdapter dAdapter = new SqlDataAdapter();
dAdapter.SelectCommand = cmd;
con.Open();
dAdapter.Fill(objDs);
con.Close();
if (objDs.Tables[0].Rows.Count > 0)
{
NameDropDown.DataSource = objDs.Tables[0];
NameDropDown.DataTextField = "Name";
NameDropDown.DataValueField = "Name";
NameDropDown.DataBind();
NameDropDown.Items.Insert(0, "--Select--");
}
else
{
NameDropDown.Items.Clear();
NameDropDown.Items.Insert(0, "No names found");
}