livebindings は初めてで、これまでのところスムーズな旅ではありませんでした。TRadioGroup.ItemIndex を Integer である TObject プロパティにリンクしようとしています。
したがって、オブジェクトの他のプロパティがTEdit、TStringGrid(オブジェクトのリスト)などに正しく双方向にバインドされているため、バインディングリスト/アダプターは問題ないことがわかります.
私が取るべき手順:
- だから私は TRadioGroup を削除します
- Visual Livebindings で (...) をクリックし、ItemIndex プロパティを「バインド可能」にします。
- Radio の ItemIndex と AdapterBindSource の Integer フィールドの間にリンクをドラッグします。
問題: 片道のみです。VLB の矢印はこれを示しています。ラジオは機能しますが、RadioButtons を介してオブジェクトの値を変更することはできません。TObject から RadioButtons を更新するだけです。
だから私は(再び)私はすべきです:
- リンクを削除する 新しい BindingExpression を作成する
- 方向=双方向
- ControlComponent/式: MyRadioGroup/ItemIndex
- SourceComponent/Expression : MyAdapterBindSource/MyIntegerField
しかし、その後エラーが発生します:
"Unable to cast or find converters between types TBindSourceAdapterReadWriteField<System.Integer> and Integer"