2010-03-26 51 views
0

我有以下财产申报何时调用属性get和set方法?

Public Property IsAreaSelected() As Integer 
     Get 
      Return If(ViewState("IsAreaSelected") Is Nothing, 0, Cint(ViewState("IsAreaSelected"))) 
     End Get 
     Set(ByVal value As Integer) 
      ViewState("IsAreaSelected") = value 
     End Set 
    End Property 

我想知道什么时候该set和get方法将被调用?

会当我执行

IsAreaSelected() =0 

还是有像

IsAreaSelected().get() 

IsAreaSelected().set() 

任何它被称为?

+0

可以格式化这是代码?缩进至少四个空格的每行代码。 – 2010-03-26 10:20:13

回答

1

调用(使用)也完全一样在你的类中的字段:

IsAreaSelected = 0 

If AreaSelected > 0 Then ... 
+0

字段名称是IsAreaSelected()不是IsAreaSelected – SmartestVEGA 2010-03-26 10:23:35

+1

请尝试像我写的那样使用它。我的示例代码执行Set和Get。否则,请更好地说明你的问题。 – 2010-03-26 10:36:14

1

属性是不使用圆括号引用。要引用属性getter,使用此语法:

xxx = AreaSelected 

要访问的属性设置,使用此语法:

AreaSelected = xxx 
+0

在这种情况下,括号是否也会被视为属性名? – SmartestVEGA 2010-03-26 10:44:56

+0

不可以。圆括号仅用于方法,这就是你如何区分它们的方法。 不幸的是,VB.Net支持不带圆括号的无参数编写方法,但包含圆括号被认为是很好的做法。另一方面,也支持带参数的属性,在这种情况下,还需要使用括号。但是你应该避免使用参数化属性并使用方法。 – Prutswonder 2010-03-26 11:01:03