1

我已经编程了一段时间,但是我有一些基本的问题,其中一个如下:

Public Class PriceListDetails
    Dim pricelist As BSPLib.PriceLists.PriceList
    Dim IsReadOnly1 As Boolean

    Public Sub New(ByVal IsReadonly2 As Boolean)

        ' This call is required by the designer.
        InitializeComponent()

        ' Add any initialization after the InitializeComponent() call.

        'Readonly prevents from Modifying/Saving
        IsReadOnly1 = IsReadonly
    End Sub
End Class

是否必须创建 IsReadyOnly1 和 IsReadyOnly2,有没有办法像引用类型一样直接将参数从新方法获取到 IsReadyOnly1?

谢谢你。

4

3 回答 3

2

很难说出你的意思,发布的代码无法编译。我猜你的意思是这样的:

Private IsReadOnly As Boolean

Public Sub New(ByVal IsReadOnly As Boolean)
    InitializeComponent()
    Me.IsReadOnly = IsReadOnly
End Sub

其中Me关键字确保分配字段而不是参数。

于 2012-05-02T17:10:25.407 回答
2

使用构造函数参数设置成员是 OOP 中非常常见的做法。但是,如果您使用公共属性,那么您也可以使用对象初始值设定项:

Dim priceList1 = New PriceListDetails With {.IsReadOnly = True}
于 2012-05-02T17:12:28.060 回答
0

Boolean 不是引用类型变量,所以不可能。

如果您想复制参考,那么您还需要两个变量。您只能将 IsReadonly2 作为参考。

于 2012-05-02T17:10:56.530 回答