forked from lee-soft/ViStart
-
Notifications
You must be signed in to change notification settings - Fork 0
/
CollectionItem.cls
61 lines (48 loc) · 1.58 KB
/
CollectionItem.cls
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
VERSION 1.0 CLASS
BEGIN
MultiUse = -1 'True
Persistable = 0 'NotPersistable
DataBindingBehavior = 0 'vbNone
DataSourceBehavior = 0 'vbNone
MTSTransactionMode = 0 'NotAnMTSObject
END
Attribute VB_Name = "CollectionItem"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
Attribute VB_Description = "Add support for keys in collections"
Option Explicit
'local variable(s) to hold property value(s)
Private mvarItem As Variant 'local copy
Private mvarKey As String 'local copy
Public Property Let Key(ByVal vData As String)
'used when assigning a value to the property, on the left side of an assignment.
'Syntax: X.Key = 5
mvarKey = vData
End Property
Public Property Get Key() As String
'used when retrieving value of a property, on the right side of an assignment.
'Syntax: Debug.Print X.Key
Key = mvarKey
End Property
Public Property Let Value(ByVal vData As Variant)
'used when assigning a value to the property, on the left side of an assignment.
'Syntax: X.Item = 5
mvarItem = vData
End Property
Public Property Set Value(ByVal vData As Variant)
'used when assigning an Object to the property, on the left side of a Set statement.
'Syntax: Set x.Item = Form1
Set mvarItem = vData
End Property
Public Property Get Value() As Variant
Attribute Value.VB_UserMemId = 0
'used when retrieving value of a property, on the right side of an assignment.
'Syntax: Debug.Print X.Item
If IsObject(mvarItem) Then
Set Value = mvarItem
Else
Value = mvarItem
End If
End Property