Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
selectedIndexChanged会自动触发,而无需在c#windows应用程序的组合框中选择项目_C#_Combobox - Fatal编程技术网

selectedIndexChanged会自动触发,而无需在c#windows应用程序的组合框中选择项目

selectedIndexChanged会自动触发,而无需在c#windows应用程序的组合框中选择项目,c#,combobox,C#,Combobox,我有一个从数据库填充的组合框 protected void bindcombobox() { string str = "Data Source=IMMENSE-01\\SQLEXPRESS;Initial Catalog=DesktopAppDB;Integrated Security=True;Pooling=False"; SqlConnection con = new SqlConnection(str); con.Open();

我有一个从数据库填充的组合框

protected void bindcombobox()
    {
        string str = "Data Source=IMMENSE-01\\SQLEXPRESS;Initial Catalog=DesktopAppDB;Integrated Security=True;Pooling=False";
        SqlConnection con = new SqlConnection(str);
        con.Open();
        SqlCommand cmd = new SqlCommand("select Id,designation from addStaff", con);
        SqlDataAdapter da = new SqlDataAdapter(cmd);
        DataTable dt = new DataTable();
        DataSet ds = new DataSet();

        da.Fill(ds);
        da.Fill(dt);
        cb_selectpost.Items.Clear();
        if (dt.Rows.Count > 0)
        {

            cb_selectpost.DataSource = dt;
            cb_selectpost.ValueMember = "Id";
            cb_selectpost.DisplayMember = "designation";


        }
        con.Close();
        con.Dispose();
    }
我有一个从组合框中选择项目时触发的事件

 private void cb_selectpost_SelectedIndexChanged(object sender, EventArgs e)
    {
        if (cb_selectpost.SelectedValue != null)
        {
            string st = cb_selectpost.SelectedValue.ToString();
            lblCB.Text = st.ToString();
            bindstaff(st);
        }
    }

但问题是,运行项目时会自动触发此事件,而不允许我从组合框中选择项。

您可以订阅SelectionChangeCommitted事件,而不是SelectedIndexChanged事件。或者您可以在数据加载之前取消订阅SelectedIndexChanged事件,并在数据加载到组合框后订阅。您可以通过多种方式解决此问题。

这可能会帮助您: