如何:添加计算字段
您可以创建从其它字段的值派生其值的字段。例如,您可将名为 Subtotal 的字段添加到 Order_Details 实体。您可以指定 Subtotal 字段的值由 UnitPrice 字段的值乘以 OrderQuantity 字段的值得出。
说明 |
---|
您不能在查询中包括一个计算字段作为过滤条件或排序条件。此外,您无法通过单击计算字段的列标题对屏幕中的信息排序。 |
定义计算字段
在**“解决方案资源管理器”**中,双击实体或表格。
在**“数据设计器”**中打开实体或表格。
在命令栏上的**“数据设计器”中,单击“计算属性”**。
在实体或表格的底端行中显示新字段。
在**“名称”**列中,单击新字段的名称,然后输入名称(例如:Subtotal)。
在新字段的**“类型”列中,选择一个数据类型(例如:“货币”**)。
在“属性”窗口中单击“编辑方法”。
**“代码编辑器”**可打开并生成一个名为字段名的 _Compute 方法。
向设置 result 参数值的FieldName**_Compute** 方法添加代码。下面的示例通过将 UntiPrice 字段的值乘以 OrderQuantity 字段的值设置 Subtotal 字段的值。
Private Sub Subtotal_Compute(ByRef result As Decimal) result = Me.Quantity * Me.UnitPrice
partial void Subtotal_Compute(ref decimal result) { result = this.Quantity * this.UnitPrice; }
未将计算字段保存到数据源。仅在使用实体或表格的屏幕上显示计算字段。在数据设计器中,计算字段旁边显示一个类似计算器的小图标。此图标指示字段仅用于显示目的,并且不影响的实体或表的数据源。
在大多数情况下,计算字段的值基于对您用于派生计算字段的值的任何字段的更改重新计算。如果在计算字段的值未更新,则用户可以刷新屏幕查看更新后的值。您也可以编写发生某些事件时刷新屏幕的自定义代码。有关更多信息,请参见 如何:处理数据事件。