2016-01-22 150 views
0

我有一個選擇模式爲MultiSimple的列表框。在form_load中,我有代碼來獲取數據源,然後從該列表中選擇我想要的默認項目。此列表包含我的數據庫中的所有表格,我想選擇Users表格作爲默認項目。但是,列表中的第一個表總是與Users表一起高亮顯示。我如何避免第一個表被自動選爲默認?刪除MultiSimple選擇列表框中的第一個項目選擇(窗體窗體應用程序)

下面是我的代碼來填充我的列表

   var lwDBConn = Properties.Settings.Default.Target_DBConnectionString;      List<string> tableNames = new List<string>(); 
       using (SqlConnection conn = new SqlConnection(lwDBConn)) 
       { 
        conn.Open(); 
        DataTable t = conn.GetSchema("Tables"); 
        foreach (DataRow row in t.Rows) 
        { 
         tableNames.Add(row[2].ToString()); 
        } 
        conn.Close(); 
       } 
       tableNames.Sort(); 
       lstSQL.DataSource = tableNames; 
       lstSQL.SetSelected(lstSQL.Items.IndexOf("Users"), true); 

我看了一下,避免第一個項目被自動選擇,但它不適合我的情況的其他職位。

回答

2

在初始化ListBox數據源之後,您需要調用listBox.ClearSelected。

+0

謝謝。這很好。 – KD2015

1

要刪除選擇只有第一個項目,您可以撥打lstSQL.SetSelected(0, false);

+0

這也適用,但對於我的情況,ClearSelection是更好的選擇,以防出於任何原因自動選擇其他項目,並且我沒有看到它。 – KD2015