'--------------------------------------------------
'クラス側
'--------------------------------------------------
Public Class UserOption
Public Structure CheckBoxChecked
Dim bln_CheckBox1Checked As Boolean
Dim bln_CheckBox2Checked As Boolean
Dim bln_CheckBox3Checked As Boolean
・
・
・
End Structure
Private Shared c_udt_CheckBoxChecked As CheckBoxChecked = New CheckBoxChecked
Public Property _udt_CheckBoxChecked() As CheckBoxChecked
Get '値を出力
Return c_udt_CheckBoxChecked
End Get
Set(ByVal udt_CheckBoxChecked As CheckBoxChecked) '値を入力
c_udt_CheckBoxChecked = udt_CheckBoxChecked
End Set
End Property
End Class
'--------------------------------------------------
'呼び出し側
'--------------------------------------------------
Dim obj_UserOption As UserOption = New UserOption
obj_UserOption._udt_BKCheckBoxChecked.bln_BKCheckBox1Checked = True
obj_UserOption._udt_BKCheckBoxChecked.bln_BKCheckBox2Checked = True
obj_UserOption._udt_BKCheckBoxChecked.bln_BKCheckBox3Checked = True
・
・
・
クラスのメンバの構造体をプロパティでやりとりしたいのですが、
上記のままだと、『Expression は値であるため、代入式のターゲットにすることはできません。』
と言われるので、構造体のメンバを全て『Dim』から『Shared』にすると、
『'CheckBoxChecked' には、少なくとも 1 つのインスタンス メンバ変数宣言または
イベント宣言が含まれていなければなりません。』と言われてしまいます。
沢山の変数を全部プロパティで書くのが面倒なので、構造体で一発でやりとりしたいのですが...。
クラスのメンバーを構造体じゃなく、クラスにすれば良かったんですね(;´Д`)
ツイート | ![]() |