プロパティで年齢計算 & 画面間のデータ受け渡し | 備忘録 (。・_・。)ノ

プロパティで年齢計算 関係のあるところ

Public Class Member

    Dim _BirthDay As Date

    Public Property BirthDay() As Date
        Get
            Return _BirthDay
        End Get
        Set(ByVal value As Date)
            _BirthDay = value
        End Set
    End Property

    Public ReadOnly Property Age() As Integer
        Get
            Dim intBirthDay As Integer = CInt(BirthDay.ToString("yyyyMMdd"))
            Dim intNow As Integer = CInt(Now.ToString("yyyyMMdd"))
            Return (intNow - intBirthDay) \ 10000
        End Get
    End Property
End Class


Public Class Form1
    Private frm2 As Form2

    Private Sub btnShowSearch_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnShowSearch.Click
        frm2 = New Form2()
        frm2.Show()
    End Sub

    Private Sub btnGetResult_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGetResult.Click
        If Not (frm2 Is Nothing) Then
            Me.TextBox1.Text = frm2.SearchResult
        End If
    End Sub

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Dim ThisMember As New Member
        ThisMember.BirthDay = Date.Parse(Me.TextBox1.Text) '#9/9/1965#
        MsgBox(ThisMember.BirthDay)
        MsgBox(ThisMember.Age)
    End Sub

End Class

Public Class Form2
    Public Property SearchResult() As String
        Get
            Return Me.TextBox1.Text
        End Get
        Set(ByVal value As String)
        End Set
    End Property
End Class

参考
VB プロパティの作成
フォーム間のデータの受け渡し。 VisualStudio2008上でVBを用い