2013-11-11 3 views
3

У меня есть GridControl, который заполняется из базы данных, как это:объект должен реализовывать IConvertible DevExpress

OracleConnection connection= new OracleConnection("DATA SOURCE=mydb;PASSWORD=pass;PERSIST SECURITY INFO=True;USER ID=id"); 
connection.Open(); 
OracleDataAdapter adapter = new OracleDataAdapter("select * from mytable", connection); 
DataTable datatable= new DataTable(); 
adapter.Fill(datatable); 
adapter.Dispose(); 
connection.Close(); 
gridControl1.ItemsSource = datatable.DefaultView; 

Затем я изменить тип gridcolumns как это:

GridColumn colCOMBOBOX = gridControl1.Columns["COMBO_MULTISELECTION"]; 
ComboBoxEditSettings combo = new ComboBoxEditSettings(); 
combo.StyleSettings = new CheckedComboBoxStyleSettings(); 
combo.ItemsSource = datatable; 
combo.DisplayMember = "PERSON"; 
combo.ValueMember = "COMBO_MULTISELECTION"; 
colCOMBOBOX.EditSettings = combo; 

У меня есть Групповое выпадающий в моей gridcolumn. Каждый элемент из combobox имеет идентификатор. Моя проблема: после выбора нескольких элементов, я получаю ошибку: объект должен реализовывать обратимый. Итак, я составил список, который получает данные из базы данных, а также я сделал его обратным. Но ошибка все еще сохраняется. Все идет отлично с помощью combobox, который находится вне gridcontrol.Doesn't gridcontrol поддерживает это? Как я могу решить проблему?

+1

Вы пробовали это https://www.devexpress.com/Support/Center/Question/Details/B132298? – Prokurors

+0

Привет. Да, это было что-то вроде этого. Я помню, что мой список был объекта типа, который не мог быть преобразован в String. Спасибо! – Viva

+0

Положите это как ответ. Эта проблема часто встречается. – Viva

ответ

1

Проблема возникает потому, что тип значения, возвращаемого LookupEdit отличается от типа поля данных столбца сетки

Вы можете прочитать подробную информацию об этом здесь ->DevExpress support ticket

Смежные вопросы