【问题标题】:List box: multiple values is not updating列表框:多个值未更新
【发布时间】:2014-10-21 09:27:24
【问题描述】:

我在一个窗口形式中有 2 个列表框,一个在左侧,一个在右侧。第一个列表框有一些项目,而第二个列表框是空的。两个列表框之间还有 2 个按钮,用于将项目从/移到第一个和第二个列表框

我的问题是,在我将数据绑定到第一个列表框(从数据库,使用 DisplayMember 和 ValueMember)之后,我尝试将第一个列表框中的 1 个项目移动到第二个列表框,我想更新桌子。使用 for 循环我更新 db 中的值。但它只是更新单个值而不是多个值

private void btnMoveRight_Click(object sender, EventArgs e)
        {

            string CS = ConfigurationManager.ConnectionStrings["DBCS"].ConnectionString;
            using (SqlConnection con = new SqlConnection(CS))
                try
                {

                    SqlCommand sqlcmd = new SqlCommand("USP_UpdateJobTracker_Box", con);
                    sqlcmd.CommandType = CommandType.StoredProcedure;
                    sqlcmd.Parameters.AddWithValue("@BoxName", "");
                    sqlcmd.Parameters.AddWithValue("@Jobname", "");
                    con.Open();
                    for (int x = 0; x <= lstUnAssignedJobs.SelectedItems.Count-1; x++)
                    {
                        if (lstUnAssignedJobs.GetSelected(x) == true)
                        {
             sqlcmd.Parameters[0].Value = listWBox.GetItemText(listWBox.SelectedValue);
             string s = lstUnAssignedJobs.SelectedItems.ToString();
                            string selectedItem = lstUnAssignedJobs.Items[x].Text;
                            sqlcmd.Parameters[1].Value = lstUnAssignedJobs.GetItemText(lstUnAssignedJobs.Items[x].ToString());----here is red redline
                            sqlcmd.ExecuteNonQuery();

                        }

                    }

                    AssignedJobToBox(listWBox.SelectedValue.ToString());

                }

                catch (Exception ex)
                {

                    MessageBox.Show("exception raised");

                }

                finally
                {

                    con.Dispose();
                    con.Close();

                }

提前致谢

【问题讨论】:

  • 我认为您从列表框中一次选择一项

标签: c# listbox


【解决方案1】:

这对我来说没有任何意义:

 sqlcmd.Parameters[1].Value = lstUnAssignedJobs.GetItemText(lstUnAssignedJobs.Items[x].ToString());----here is red redline

你能做到吗?

 sqlcmd.Parameters[1].Value = lstUnAssignedJobs.Items[x].Text.ToString();

如果您能进一步解释,将不胜感激

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-19
    • 2013-08-26
    • 2021-10-28
    相关资源
    最近更新 更多