0

winformアプリケーションにdevexpressのデータグリッドがあります。コードからデータグリッドを作成しました(データソース= 2つの文字列列とint型のデータテーブル(0と1の値を受け取ります-フォームのチェックボックスにする必要があります))。

データグリッドを追加し、デザイナーから 3 つの列を追加しました。タイプ チェックボックスの最後の 1 つを設定しました。

UnboundType=Integer,
UnboundExpression=my column name from datatable :
DisplayFormat = Numeric,
columnedit = checkbox,
Displaycheckedvalue = 1,
displayuncheckedvalue = 0.

アプリケーションを実行すると、常にチェックボックスが青色になります。1 つのチェックボックスを押すと、チェックが表示されますが、次の行に移動すると、前の値が再び青色になります。アプリケーションがチェックを維持するのはなぜですか?

4

2 に答える 2

1

列を非バインドに設定しないでください。結局のところ、データソースにあります。

やりたいことは、これまでと同じように Displaycheckedvalue と displayuncheckedvalue を設定するだけで、それ以上は何もありません。

于 2013-05-13T13:16:33.833 に答える
0

テーブルの各列のプロパティを取得したクラスを作成できます。int 値は bool になるため、List をデータソースとして使用できます。グリッドはブール値のチェックボックスを自動的に追加します。DataTable を使用したい場合は、Stig の投稿を参照してください。ただし、私の意見では、クラスとリストを使用する方が美しいと思います。

于 2013-05-29T06:48:14.080 に答える