Throw Exception in Property setting : Property « Class Module « VB.Net Tutorial






Imports System

Module Test
  Sub Main()
    
    Dim p as Point = New Point()
    
    Console.WriteLine("(" & p.X & "," & p.Y & ")") 
    
    Try
      p.X = -100
      p.Y = -100
    Catch e as ArgumentOutOfRangeException
      Console.WriteLine(e.Message)
    End Try
    
    Console.WriteLine("(" & p.X & "," & p.Y & ")") 

  End Sub
End Module

Public Class Point
  Private yCoord as Integer
  Private xCoord as Integer
  Public Property X as Integer
    Get
      Return xCoord
    End Get
    Set(ByVal Value as Integer)
      If Value < 0 then
        Throw New ArgumentOutOfRangeException("Value","X Coordinate must be greater than 0")
      End If
      xCoord = Value
    End Set
  End Property
  
  Public Property Y as Integer
    Get
      Return(yCoord)
    End Get
    Set(ByVal Value as Integer)
      If Value < 0 then 
        Throw new ArgumentOutOfRangeException("Value","Y Coordinate must be greater than 0")
      End If
      yCoord = Value
    End Set
  End Property
End Class
(0,0)
X Coordinate must be greater than 0
Parameter name: Value
(0,0)








6.38.Property
6.38.1.Define and use a Property
6.38.2.Default Property
6.38.3.Two properties
6.38.4.Do calculation in Property getter
6.38.5.Properties with Getter and Setter
6.38.6.Shared variable and Shared Property
6.38.7.Class with a property that performs validation
6.38.8.ReadOnly property
6.38.9.MultiKey Properties
6.38.10.Overloaded Properties
6.38.11.Shared Properties
6.38.12.Single Indexed Property
6.38.13.Loop through two dimensional array with GetUpperBound and GetLowerBound
6.38.14.Use Property to set private data
6.38.15.Do data check in property set
6.38.16.Convert data type in property set
6.38.17.Throw Exception in Property setting
6.38.18.Change value in Property getter
6.38.19.Friend Property
6.38.20.Readable and Writable
6.38.21.Person with FirstName and LastName Property
6.38.22.Define a class with one property and retrieves the name and type of the property