3

次のようにデータベースからデータが取り込まれるグリッドコントロールがあります。

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 に複数選択コンボボックスがあります。コンボボックスの各アイテムには ID があります。私の問題は次のとおりです。複数のアイテムを選択した後、エラーが発生します:オブジェクトは iconvertible を実装する必要があります。そこで、データベースからデータを取得するリストを作成し、それを Iconvertible にしました。しかし、エラーはまだ残っています。gridcontrolの外にあるコンボボックスですべてがうまくいきます.gridcontrolはこれをサポートしていませんか? どうすれば問題を解決できますか?

4

1 に答える 1

1

この問題は、LookupEdit によって返される値の型がグリッド列のデータ フィールドの型と異なるために発生します。

これに関する詳細情報は、こちらで読むことができます -> DevExpress サポート チケット

于 2015-05-15T16:17:27.843 に答える