Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: Visual Basic
Expertise: Advanced
Aug 1, 1997



Building the Right Environment to Support AI, Machine Learning and Deep Learning

Combine Default with Other Attributes

When building an ActiveX control, you can set a default property or method using the Procedure Attributes dialog box, after clicking on the Advanced button. However, if your default property also happens to require another special attribute-as is the case with Caption and Text properties-you're in trouble because the Procedure ID combo box only permits one selection. Suppose your ActiveX control exposes a Caption property you want to behave as a regular property-for example, all keys typed in the Property window are immediately reflected in the control itself. In order to achieve this behavior, assign the Caption attribute to this property in the Procedure ID combo box (see tip "Properties That Behave Like Text and Caption"). If you also want to make it the default property, you must resort to a trick: declare another, hidden property that delegates to your Caption property, and set this new property as the default member of the ActiveX control. The name of this property is not important because the user never sees it:
Property Get DefaultProp() As String
        DefaultProp = Caption
End Property

Property Let DefaultProp(newValue As _
        Caption = newValue
End Property
Francesco Balena
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