有界列中的未绑定表达式出错?

时间:2013-12-05 11:12:44

标签: c# winforms gridview devexpress

在我的GridView 8列中,从Access DataBase开始。 (项目,说明,UoM,数量,单位价格,折扣%,折扣,增值税)。我在Item(Bounded Column)中有GriditemLookupEdit。如果我选择任何项目,它会自动填充剩余的列。默认折扣%和折扣为0.我将Unbounded Expression设置为两列(折扣%和折扣)。但是,如果在两列中更改任何值,则运行时表达式无效。

我的未绑定表达

DiscountPercentage = "([DiscountAmount] / [UnitPrice]) * 100.0"

DiscountAmount = "[UnitPrice] * ([DiscountPercentage] / 100.0)"

这不适用于未绑定列。有可能吗?

1 个答案:

答案 0 :(得分:0)

无法在有界列中使用未绑定表达式。取而代之的是使用未绑定表达式,我们可以使用此代码在CellValueChanged事件中计算

 var row = gridView1.GetFocusedDataRow();

if (e.Column == colDiscountAmout)
{
    var productPrice = Convert.ToDecimal(row["Price"]);
    var discountAmout = Convert.ToDecimal(row["DiscountAmout"]);
    row["DiscountPercent"] = (discountAmout * 100) / productPrice;
}


if (e.Column == colDiscountPercent)
{
    var productPrice = Convert.ToDecimal(row["Price"]);
    var discountPercent = Convert.ToDecimal(row["DiscountAmout"]);
    row["DiscountAmout"] = productPrice * (discountPercent / 100);
}