2017-08-12 3 views
0

私がお願いしたいグリッドに無制限のコンボボックスを追加します。私は、実行時にformBuildGridControlで無制限コンボボックスを追加する方法どのように動的に

  1. FormBuildStringControl formString = formBuildGridControl.addDataField(form.dataSource(i).id(),DictField.id()); 
    
    formString.label(fieldId2Name(dictTable1.id(),fieldId)); 
    
    FormBuildComboBoxControl combo = formString.addControl(FormControlType::ComboBox,fieldId2Name(dictTable1.id(),f eldId)); 
    
    combo.label(fieldId2Name(dictTable1.id(),fieldId)); 
    

問題があるときに私はコンボボックスのラベルを割り当てようとしていますが、コンボがnullであるという例外があります。

一般的に私は、任意のデータソースで無制限のコンボボックスを動的にインポートするが、データソースのインスタンスは列挙型でバインドしたいと思います。

答えて

1

コードから、何らかの理由でformStringにコンボボックスコントロールを追加しようとしています。 formBuildGridControlに追加してはいけませんか?私。

FormBuildComboBoxControl combo = formBuildGridControl.addControl(FormControlType::ComboBox, fieldId2Name(dictTable1.id(), fieldId)); 

combo.label(fieldId2Name(dictTable1.id(), fieldId)); 
+0

私の悪い、それは正しいのですが、それでもグリッドコントロールは空です。 –

+0

問題はグリッドにデータフィールドをバインドしていないことさえありませんでした。コンボボックスはそこにありましたが、グリッドには線が全くなかったので表示できませんでした。魅力のように動作します。 –

関連する問題