如何使用双击事件单击列表框中的文本以使该文本显示在空文本框中

时间:2018-03-16 12:19:55

标签: c# visual-studio double-click listboxitems

您好我已经创建了一个预订工具,我想为每个预订分配一个客户。我创建了一个列表框,它是使用数据库中客户的名称生成的。我希望能够双击其中一个名称,该名称将以相同的形式显示在文本框中。 感谢所有帮助。感谢

以下是生成我的客户的代码

   public void getListOfAllCustomers()
    {
        SqlConnection conn = new SqlConnection(connectionString);
        try
        {
            conn.Open();

            str = "Select CustomerId, CustomerName from Customer";
            SqlCommand cmd = new SqlCommand(str, conn);
            SqlDataReader myReader = cmd.ExecuteReader();
            DataTable CustomerList = new DataTable();
            CustomerList.Columns.Add("CustomerId", typeof(string));
            CustomerList.Columns.Add("CustomerName", typeof(string));
            CustomerList.Load(myReader);
            LBcustomersavailable.ValueMember = "CustomerId";
            LBcustomersavailable.DisplayMember = "CustomerName";
            LBcustomersavailable.DataSource = CustomerList;
            LBcustomersavailable.BindingContext = this.BindingContext;
        }
        catch (Exception ex)
        {

            string filepath = AppDomain.CurrentDomain.BaseDirectory + "ErrorLog.txt";
            using (StreamWriter writer = new StreamWriter(filepath, true))
            {
                //Log error that occurred into a text file 
                writer.WriteLine("Message :" + ex.Message + "<br/>" + Environment.NewLine + "StackTrace :" + ex.StackTrace + "" + Environment.NewLine + "Date :" + DateTime.Now.ToString());
            }
            MessageBox.Show("Error Message :" + ex.Message + Environment.NewLine + "An error has occurred. Try restarting your application and if this error keeps occuring please call our helpdesk");
        }
        finally
        {
            conn.Close();
        }

    }

Here is an image of the design

1 个答案:

答案 0 :(得分:0)

您需要将双击事件绑定到列表框。

要执行此操作,请在设计模式下查看表单,单击列表框并按F4以查看“属性”窗口。 然后点击&#34;闪电Flash&#34;用于调出事件列表的符号。选择DoubleClick,在框中单击并按Enter键。这应该为您添加事件绑定。

下面是一个简单的例子。

private void LBcustomersavailable_DoubleClick(object sender, EventArgs e)
{
      if (((ListBox)sender).SelectedItem != null)
            txtName.Text = ((ListBox)sender).SelectedItem.ToString();
}

我添加了一个名为txtName的文本框,以显示在列表框中单击的条目。

希望有所帮助