2017-01-24 13 views
0

私は、基本的なデータバインディングの状況で、私の基礎となる質問オブジェクトのプロパティが、XtraGrid.GridControlを定義した列にバインドされています。しかし、私は "{質問| True}、{質問| False}"の形式を取るテキストプロパティを1つ持っています。これらは、グリッド内のチェックボックスにマッピングする必要があります(プロパティごとに多数の可能性があります)。データバインディングを使用して、この文字列プロパティを直接セルにバインドし、チェックボックスの編集を提供することは可能ですか?おそらくCheckedComboBoxを使用しますか?私は、元の文字列をチェックボックスにマップし、チェックボックスから文字列に戻すために、バインディング処理の中間段階が必要だと思っています。オブジェクトからデキューグリッドへのバインド

それ以外の場合は、チェックボックスのオプションごとに新しいオブジェクトを含むオブジェクトの別のレイヤーを作成することですが、何らかの理由で上記のテキストからのチェックボックスCheckComboBox私は基本的なオブジェクトに直接バインドすることができるでしょう。

+0

DXグリッドは、バインディングの点で非常に柔軟です。だから私はあなたが望むものを達成することが可能でなければならないと確信しています。しかし、最初のplsは、それらのチェックボックスをグリッド行/セルのように見せたいというUIスケッチのスクリーンショットを提供します。 – andrews

答えて

0

私はCheckboxQuestionAndAnswerオブジェクトのコレクションにテキストを変換することになりましたそれをグリッドにバインドした後、データを書き込むための単一のテキスト文字列に戻します。

0

あなたのことをよく理解していれば、質問オブジェクト にboolプロパティを含めるように変更する必要があると思います。 Boolプロパティはチェックボックスとしてグリッドにバインドされているため、自動的に動作します。 私はそのプロパティのあなたの本当の値が文字列でなければならないことを知っている「{質問|真}」 ので、あなたがそのように、そのプロパティを設定することができます。

private string question; 

private bool questionBool; 
public bool QuestionBool{ 
get{return questionBool;} 
set{ 
if(value) 
    question = "{Question|True}"}; 
else 
    question = "{Question|False}"; 

questionBool = value; 

} 
+0

ありがとうPawełしかし私が持っていた問題は、同じフィールドに複数のチェックボックスがエンコードされていることでした。 – majjam

関連する問題