Vb.net 计算属性中的电话类型

Vb.net 计算属性中的电话类型,vb.net,visual-studio-2010,visual-studio-lightswitch,Vb.net,Visual Studio 2010,Visual Studio Lightswitch,在以下代码示例中,[MainSwitchBoardPhone]的属性类型为“Phone”。当我将computed ClinicholitalAddress属性设置为实体的摘要属性时,我希望电话号码以(555)555-5555格式显示在数据输入屏幕中,而不仅仅是一个字符串。i、 e.5555。有办法做到这一点吗 Private Sub ClinicHospitalAddress_Compute(ByRef result As String) ' Set result to the desire

在以下代码示例中,[MainSwitchBoardPhone]的属性类型为“Phone”。当我将computed ClinicholitalAddress属性设置为实体的摘要属性时,我希望电话号码以(555)555-5555格式显示在数据输入屏幕中,而不仅仅是一个字符串。i、 e.5555。有办法做到这一点吗

Private Sub ClinicHospitalAddress_Compute(ByRef result As String)
  ' Set result to the desired field value
  result = [ClinicHospital] & " " & [StreetAddress] & ", " & _
           [City] & " " & [MainSwitchBoardPhone]
详情如下:

result = [ClinicHospital] & " " & [StreetAddress] & ", " & _
[City]&“&Format([Main Switchboard Phone],”(#######-######)试试:

result = String.Format("{0} {1}, {2} (###) ###-####" _
    , [ClinicHospital] _
    , [StreetAddress] _
    , [City] _
    , Convert.ToInt64([MainSwitchBoardPhone]) _
    )

编辑:添加了Convert.ToInt64

Rob,感谢您的回复。但是,#在表单上显示为#,而不是电话号码。医院名称地址,城市(#########-####在这种情况下,主交换机电话可能是字符串,而不是整数。请将代码更改为格式(Val([MainSwitchBoardPhone]),“(#######-#####-#),您应该很好。嗨,Yann,这是我在computed属性中得到的结果,我得到了相同的结果,谢谢您:Namespace LightSwitchApplication公共类ClinicHospitalLookup Private Sub-ClinictalAddress(ByRef结果为字符串)'将结果设置为所需的字段值result=String.Format(“{0}{1},{2}(#######-#####,[ClinicHospital].[StreetAddress].[City].[main switchboardphone].[u]End子端类End NamespaceOh!!!就在我准备写“这很奇怪”的时候,我意识到出了什么问题。#表示数值,而您的电话号码必须是字符串。我可以发誓你仍然可以使用String.Format来做这件事,但在阅读了周围的内容之后,显然你不能。如果存储的MainSwitchBoardPhone没有格式字符,则可以将其转换为数字。那我给你的密码就行了。因此,请使用Convert.ToInt64([MainSwitchBoardPhone]),而不仅仅是MainSwitchBoardPhone。在LightSwitch中,我将mainswitch的属性类型更改为“Integer”,然后
result=[ClinicHospital]&“&[StreetAddress]&”、“&[City]&”&Format([MainSwitchBoardPhone],“(#####-########
在列表屏幕中正确显示。这将适用于此特定应用程序,但理想的解决方案是将
Convert.ToInt64
解决方案与初始“Phone”属性类型一起使用,但我无法找到正确的编写方法。我向您展示了如何使用它;“将.ToInt64([MainSwitchBoardPhone])转换为[MainSwitchBoardPhone],而不仅仅是[MainSwitchBoardPhone]”。我已经更新了我的原始代码以放入上下文中。对不起,我没有注意到您可以在此页面上这样做。然而,结果仍然是一样的。#仍然显示在数据输入模式屏幕和列表的computed属性中。