0

我在 winform 应用程序中有一个来自 devexpress 的数据网格。我从代码中填充了数据网格(数据源 = 我的数据表,其中包含 2 个字符串列和一个 int 类型(接收 0 和 1 值 - 应该是表单上的复选框)。

我添加了一个数据网格,并从设计师那里添加了 3 列。最后一个类型为复选框。我设置

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

当我运行应用程序时,我的复选框总是蓝色的。如果我按下一个复选框,则会出现一个检查,但是当我转到下一行时,以前的值又是蓝色的。我应该怎么做,为什么应用程序保留检查?

4

2 回答 2

1

不要将列设置为未绑定,毕竟它在您的数据源中。

您要做的只是像您所做的那样设置 Displaycheckedvalue 和 displayuncheckedvalue ,仅此而已。

于 2013-05-13T13:16:33.833 回答
0

您可以创建一个类,为表的每一列获取一个属性。int 值将是一个布尔值,因此您可以使用 List 作为数据源。Grid 将自动为 bool 值添加复选框。如果您想使用 DataTable,请参阅 Stig 的帖子,但我认为使用类和列表更漂亮。

于 2013-05-29T06:48:14.080 回答