2015-04-22 93 views
0

在问我的问题之前,我举了一个简单的示例来明确我的问题。LightSwitch HTML客户端:如何根据另一个计算属性设置计算属性的值

在我LightSwitch HTML客户端,我有一个表有一列“金额”

我做了一个计算的属性,“amountPlusTax”,我设置其为跟随值,

myapp.BrowseTransactions.amountPlusTax_postRender = function (element, contentItem) { 
     contentItem.dataBind("data.amount", function() { 
      $(element).text(parseFloat(contentItem.data.amount) * 1.05); 
     }); 
}; 

由于你看,amountPlusTax =金额* 1.05

我有我想要使另一个计算属性,其值取决于“amountPlusTax”计算属性的值的问题。 赞,amountPlusTaxPlusInterest = amountPlusTax * 1.03

这怎么可能?

这不起作用:

myapp.BrowseTransactions.amountPlusTaxPlusInterest_postRender = function (element, contentItem) { 
    $(element).text(parseFloat(contentItem.screen.amountPlusTax) * 1.03); 
}; 
+0

你得到什么样的答案?它是显示空还是不正确的值? – Crezzer7

+0

显示为空(无)。 – user3862659

+0

你有没有尝试过使用setTimeout函数?它可能不会在时间上计算,这是一个问题,我发现,250毫秒的工作治疗.. – Crezzer7

回答

0

尽管这并不直接回答你的问题,你可以捕捉或者插入/插入的/更新/更新事件DataService的和更新的一个或两个的而不是使用计算的属性。

例如:

partial void SomeTable_Updating(SomeTable entity) 
    { 
     if (entity.SomeField.IsNullOrWhiteSpace()) 
      entity.SomeField = Utils.ConvertToValidName(entity.Name); 
    }