asp.net中的下拉列表值(由Visual Studio提供)

时间:2016-08-08 05:41:59

标签: c# jquery asp.net

下拉列表问题

我有一个相当简单的问题。

我有一个下拉列表,由我的sql数据库中的表填充。现在我正在将值检索到下拉列表中,但这些值将转到下拉列表中的最后一行(值为machine1)。现在,我想通过用户选择员工姓名来获得价值。

enter image description here

代码:

string select = "select * from dally_report where Emp_name='" + txt_search.SelectedItem.ToString()+ "'";
   MySqlCommand cmd1 = new MySqlCommand(select, DBConnection.connection());
   MySqlDataAdapter sp = new MySqlDataAdapter();
   MySqlDataReader dr = cmd1.ExecuteReader();

        if (dr.Read()) 
        {
            txt_date.Text = dr[2].ToString();
            txt_empname.Text = dr[1].ToString();
            txt_jobno.Text = dr[3].ToString();
            txt_machine1.Items.Add (dr[4].ToString()); // This is drop down list
        }

2 个答案:

答案 0 :(得分:0)

而不是使用Items.Add尝试使用索引号为0的Items.Insert

答案 1 :(得分:0)

试试此代码

<asp:DropDownList ID="drp_district" runat="server" EnableViewState="true" OnSelectedIndexChanged="drp_district_SelectedIndexChanged" AutoPostBack="true" CssClass="form-control" autocomplete="off"></asp:DropDownList>

   protected void drp_district_SelectedIndexChanged(object sender, EventArgs e)
        {
            string value = drp_district.SelectedValue;

            _objdll.TableName = "tbl_assemblydetails";
            _objdll.Condition = "district_id";
            _objdll.Value = value;

            DataSet ds_assembly = _objdal.Fn_GEN_SelectAll_1Condition(strcommoncon, _objdll);
            if (ds_assembly.Tables[0].Rows.Count > 0)
            {
                drp_assembly.DataTextField = "assembly_english".ToUpper();
                drp_assembly.DataValueField = "assembly_id";
                drp_assembly.DataSource = ds_assembly;
                drp_assembly.DataBind();
            }
            else
            {
                drp_assembly.DataSource = null;
                drp_assembly.DataBind();
                drp_assembly.Items.Insert(0, new ListItem("Select Assembly", "0"));
            }
    }