私はC#を初めて使っていますが、プログラミングはしていません。私はVSを使いこなしていて、言語に慣れてきて、メモリ内のデータセットのint datatableカラムにバインドされたコンボボックスにこだわりました。バインドされたコンボボックスが一致しません
私はDataGridViewのに勤務し、何の問題DataGridViewComboBoxColumnを作成し、Key:int
とDesc:string
で構成されるカスタムクラスを使用して、そのドロップダウンリストを移入がありませんでした。 ValueMember = Key
,DisplayMember = Desc
。 DataSourceは、リストがComboBoxに直接組み込まれているため、nullのままです。コンボボックスから選択して変更を保存すると、グリッド上で正常に動作します。
次に、コンボボックスに移動しました。グリッドとComboBoxのBindingSourceはまったく同じです。そう、彼らは同時に同じ行を指している。
私はコンボボックスをバインド:コンボボックスのドロップダウン項目を移入せずに
cbCtrl.DataBindings.Add("Text", myBindingSource, ColDBName);
、私は生のint型の値がコンボボックスに表示参照してください。グリッドを使用して行を変更し、ComboBoxの値も変更されます。それは良いです。
次に、ComboBoxの項目のドロップダウンリスト(同じ列に関連付けられているグリッドの列と同じ)に値を設定します。これは問題です。生のint値(たとえば19)は、ComboBoxのドロップダウンリストの適切な「Key」項目に一致しません。私は試しましたDropDownStyle = DropDown & DropDownListいずれかの運がありません。そして私は修正を見つけるために何時間も探しました。 ComboBoxに接続されたイベントはありません。私はComboBoxのドロップダウンリストの一致する "Key"項目に生の値の自動接続を期待していました。
何か他のものがありますか?私は何かマイナーなことを期待して以来、挫折。
お手数をおかけしますようお願い申し上げます。ありがとうございました。
*編集:ドロップダウンリスト、実際に人口するBindingList> <から来ているとするBindingList <>はComboBox.DataSourceとして供給されています。