The Property Let of Your BarValue property should look something like this.
Code:
Public Property Let BarValue(New_BarValue As Single)
m_BarValue = New_BarValue 'm_BarValue Holds the value of the property
PropertyChanged "BarValue" ' You may not have this, this is to make the property Persistant, don't worry if you don't
End Property
I'm assuming that you want to update the userControl when this property is changed.
Have a subrouting Called Update which redraws the Control. And change the property Let to this
Code:
Public Property Let BarValue(New_BarValue As Single)
m_BarValue = New_BarValue 'm_BarValue Holds the value of the property
PropertyChanged "BarValue" ' You may not have this, this is to make the property Persistant, don't worry if you don't
Call Update() 'This is the new line which calls your update procedure
End Property