Login | Register   
RSS Feed
Download our iPhone app
Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: VB7
Expertise: Intermediate
Oct 6, 2003

HaveSameValue - Check whether all the input controls have the same property value

' Return True if all the controls in the input array have the same value for 
' the specified property
' Note: requires the GetField function
' Example:
'   Debug.WriteLine(HaveSameValue("Text", TextBox1, Button1, Button2))
'   Debug.WriteLine(HaveSameValue("ForeColor", Button1, Button2))
'   Button1.ForeColor = Color.Yellow
'   Debug.WriteLine(HaveSameValue("ForeColor", Button1, Button2))

Function HaveSameValue(ByVal propertyName As String, ByVal ParamArray objs() As _
    Object) As Boolean
    ' return True if there is 0 or 1 object in the input array
    If objs.Length = 0 OrElse objs.Length = 1 Then Return True

    ' get the value of the first object in the array, that will be used as the 
    ' value to compare against
    Dim val1 As Object = GetField(objs(0), propertyName, Nothing)

    ' compare val1 with the property value of all the other objects,
    '  and return False if the 2 values do not match
    Dim i As Integer
    For i = 1 To objs.Length - 1
        Dim val2 As Object = GetField(objs(i), propertyName, Nothing)
        If val2.Equals(val1) = False Then Return False

    ' if we get to this point, all the objects have the same value for the 
    ' specified property
    Return True
End Function
Marco Bellinaso
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date