PRB: Apply Button on Custom OCX Property Page Always Disabled

ID: Q161237


The information in this article applies to:
  • Microsoft Visual Basic Learning, Professional, and Enterprise Editions for Windows, version 6.0
  • Microsoft Visual Basic Control Creation and Enterprise Editions for Windows, version 5.0


SYMPTOMS

When changing properties of a custom ActiveX control via a custom property page, the Apply button is never enabled.


CAUSE

The Changed property is not being set from the property page code.


RESOLUTION

In the property page code, add the line:


     Changed = True 
to all code that changes UserControl properties.


STATUS

This behavior is by design.


MORE INFORMATION

The Visual Basic IDE or run-time system controls the state of the Apply Button on your custom property pages. In order to tell Visual Basic that the user has edited one or more properties on a property page, you must set the PropertyPage object's Changed property to True. Because there is no way to know which property a user might decide to change, you must do this for every property displayed on the page.

The following code snippet illustrates using the Changed property in property page code:


      Private Sub ControlCaption_Changed()
        Changed = True
      End Sub

      Private Sub ApplyChanges()
      Dim X As Variant
        For Each X In SelectedControls
          X.Caption = ControlCaption.Text
        Next X
      End Sub 
This process can be simplified by using the Property Page Wizard from the Visual Basic Add-Ins menu.


REFERENCES

Microsoft Visual Basic Online Help, Changed Property.
Microsoft Visual Basic User's Guide, Chapter 10, Creating Property Pages for ActiveX Controls, Enabling the Applied Button by Setting Changed = True.

Additional query words: kbVBp500 kbVBp600 kbdse kbDSupport kbVBp kbAddIN kbIDE

Keywords : kbGrpVBDB
Version : WINDOWS:5.0,6.0
Platform : WINDOWS
Issue type : kbprb


Last Reviewed: February 2, 2000
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.