C# 防止列表框从一开始就选择项

C# 防止列表框从一开始就选择项,c#,winforms,listbox,runtime,C#,Winforms,Listbox,Runtime,我有一个问题,它对图形用户界面的运行时有非常坏的影响。我正在初始化我的Form1(当GUI打开时): 因此,他打开函数,用数据库中的值填充列表框(每列一个列表框)。函数本身以这种方式填充框: datTable = new DataTable(); sqlCmd = new SqlCommand(@"SELECT DISTINCT [" + form1.getCol1() + "] FROM [" + form1.getTableName() + "

我有一个问题,它对图形用户界面的运行时有非常坏的影响。我正在初始化我的Form1(当GUI打开时):

因此,他打开函数,用数据库中的值填充列表框(每列一个列表框)。函数本身以这种方式填充框:

            datTable = new DataTable();
            sqlCmd = new SqlCommand(@"SELECT DISTINCT [" + form1.getCol1() + "] FROM [" + form1.getTableName() + "]", connection);
            sqlDatAdapter = new SqlDataAdapter(sqlCmd.CommandText, connection);
            sqlDatAdapter.Fill(datTable);

            form1.listbox1.DisplayMember = form1.getCol1();
            form1.listbox1.ValueMember = "Column1";
            form1.listbox1.DataSource = datTable;

在这个函数之后,我将Listbox selectedIndex设置为“-1”,我试图将它放在最后一行之后和之前,但每次他到达最后一行并将数据源设置到数据表时,他都会自动跳入Listbox的“selectedIndexChanged”方法并选择它的第一个值。这会导致糟糕的运行时问题。是否可以阻止他从列表框中选择一个值(或在选择某个值之前将其设置为-1)

太好了!非常感谢你!
            datTable = new DataTable();
            sqlCmd = new SqlCommand(@"SELECT DISTINCT [" + form1.getCol1() + "] FROM [" + form1.getTableName() + "]", connection);
            sqlDatAdapter = new SqlDataAdapter(sqlCmd.CommandText, connection);
            sqlDatAdapter.Fill(datTable);

            form1.listbox1.DisplayMember = form1.getCol1();
            form1.listbox1.ValueMember = "Column1";
            form1.listbox1.DataSource = datTable;
        listBox1.SelectionMode = SelectionMode.None;
        listBox1.DataSource = dataTable;
        listBox1.SelectionMode = SelectionMode.One;