2012-11-01 164 views
-3

有人可以解釋這種行爲嗎?組合框選擇多個項目

enter image description here


不僅MouseOver選中多個項目(不打算),但是當我Select的項目(即鼠標懸停)的代碼去Selection_Changed事件,改變了右邊的圖片(按預期),但在加載圖片時,會出現一條錯誤消息,指出路徑中存在無效字符。


BD.Shape xShape = new BD.Shape(); 
comboBoxShapes.ItemsSource = xShape.GetListOfShapes(); 

public List<String> GetListOfShapes() 
    { 
     List<String> iList = new List<String>(); 
     try 
     { 
      GetConnectionString iGet = new GetConnectionString(); 
      System.Data.OleDb.OleDbConnection iConnect = new System.Data.OleDb.OleDbConnection(); 
      iConnect.ConnectionString = iGet.ConnectionString(); 
      iConnect.Open(); 
      System.Data.OleDb.OleDbCommand iCommand = new System.Data.OleDb.OleDbCommand(); 
      iCommand.Connection = iConnect; 
      iCommand.CommandText = "Select ShapeName from Shapes "; 
      System.Data.OleDb.OleDbDataReader iRead = iCommand.ExecuteReader(); 
      while (iRead.Read()) 
      { 
       Shape iShape = new Shape(); 
       iShape.ShapeName = iRead["ShapeName"].ToString(); 
       iList.Add(iShape.ShapeName); 
      } 

     } 
     catch 
     { 
      MessageBox.Show("Someone better call batman or something `\\(^_^)_/`"); 
     } 
     return iList; 
    } 

enter image description here


請注意,如果我選擇其他任何在它破折號-只選擇一個項目。有沒有隱藏/無效的字符....

+0

請解釋一下你說的「它」是什麼。 (「它」運行代碼...「它」說...「它」只選擇一個項目......) –

+0

然後更新問題而不是假設。組合框的選擇模式是什麼?底部的樣本是什麼? – Paparazzi

+0

選擇模式是否設置爲下拉列表? – Derek

回答

1

你確定數據中沒有新的行字符?

調試該列表中的項目數。

string same = "same" + Environment.NewLine + "next Line"; 
List<string> lstring = new List<string> { "one", "two - a", "two - b", "three", "three", same, same }; 
cb1.ItemsSource = lstring; 

這具有您描述的選擇行爲。

+0

只能由\ n生成新行嗎? –

+0

大聲笑,我一直在尋找一個錯誤的代碼,在訪問數據庫中,它顯示sonora是1行(如截圖所示),但如果我突出顯示它並拉下它揭示sedona下面,我只是由於行的高度無法看到它__ –

+0

@JustinKirk有很多方法 – Paparazzi

相關問題