对象中的属性未更新

goomba454

当我使用以下代码创建对象时,我在with部分中分配的值没有反映在我的类中,并且我试图在第二个片段的Sub New()部分中使用该值。我该如何工作?

Dim RoughPnl As New RoughPnl(trvPartList, pnlBasePanel, chkRoughUnderFinal.Checked) With
                 {.Material = cboMaterial.Text, .Label = cboLabel.Text, .Qty = cboQty.Text,
                  .BoardThickness = cboThickness.Text,
                  .BoardWidth = cboWidth.Text,
                  .BoardLength = cboLength.Text,
                  .BoardColor = picFinalColor.Tag,
                  .BoardImage = picFinalColor.Image,
                  .DimLinesON = chkFinalDimLines.Checked,
                  .LabelsON = chkLabelsON.Checked,
                  .SizeON = chkSizeON.Checked}

第二段

Public NotInheritable Class RoughPnl
    Inherits MyPanel

    Sub New(objTree As TreeView, basePnl As Panel, rpnl As boolean)
        MyBase.New(objTree, basePnl)

        'Initial values
        m_myKey = myKey
        m_refNum = refNum
        m_material = material
        m_label = label
        m_qty = qty
        m_pnlID = "Rough"
        Me.Name = m_pnlID & "key" & m_material & "-" & m_myKey
    End Sub
End Class
金西尼

正如@GlorinOakenfoot所建议的那样,代码如下:

Dim obj As New SomeType With {.SomeProperty = someValue}

只是这个的简写:

Dim obj As New SomeType

obj.SomeProperty = someValue

很明显,为什么不能someValue在构造函数中使用它。如果要在构造函数中使用值,则与任何其他方法一样,必须通过参数来粘贴该值。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章