内联定义和声明

时间:2012-02-20 01:58:27

标签: c# vb.net object-initializers

好的,我确定我错误地写了这个概念但不管怎么说。

我知道在CSharp中你可以做到

el.AppendChild(new UISize(file, "TSize") { CX = 95, CY = 20 });

声明临时存储区变量,然后将关联属性值分配给变量。然后将其发送到XMLElement AppendChild方法。

  1. 这个设计概念叫做什么?
  2. VB.Net的转换是什么?
  3. 我尝试过使用我自己的在线工具,它可以从C#< - >转换率达到90-95%。 VB.Net。它在这种情况下失败了,所以需要提一下我要做的事情,将它从C#转换为VB.Net。

    如果可能的话,我真的不想做一个带分配的变量的长声明。

1 个答案:

答案 0 :(得分:8)

这是在C#中使用对象初始值设定项。在VB中,执行相同操作的语法略有不同

var uiSize = new UISize(file, "TSize") { CY = 95, CY = 20 }; // C#
Dim uiSize = New UISize(file, "TSize") With {.CX = 95, .CY = 20} ' VB

当然,您也可以在方法调用中内联对象的实例化。

someObject.SomeMethod(New UISize(file, "TSize") With {.CX = 95, .CY = 20})

有关在Visual Basic中使用对象初始值设定项的更多信息,请consult this documentation