KB Article K18488
Visible to All Users

Is it possible to apply DevExpress skins to standard or 3rd party components?

Description:
I want to apply DevExpress skins to some 3rd party controls. How can I do this?

Answer:
Since the default painting mechanism can be overridden only in a descendant of a control and we do not know the internal architecture of 3rd party controls, our skins can be applied only to our controls. We cannot affect the painting of 3rd party controls.
The easiest solution to the problem is to replace 3rd party controls with our analogs. If you cannot replace these controls, you can try to skin them manually. To do this, you need to create a descendant of the required control and draw its content as your needs dictate. If you have access to our source code, you can find which painters we use internally and use them in your application. Another solution is to access required images and colors manually as described in the following articles:
How to get skin images at runtime
How to obtain the color of a particular control's element when skins are used
How to get colors that correspond to the currently used skin
How to change one skin element in all available skins
Attached is an example illustrating how to apply skins to the standard Button control.

See also:
DevExpress WinForms Cheat Sheet - Appearances and Skins

Show previous comments (1)
B B
Brendon Muck [DevExpress MVP] 11 years ago

      For our old VB6 components, we used the Codejock skinning framework, which was also able to skin 3rd party controls (even our old cobol dialogs). Why isn't this possible with devexpress?
      Our application is be a mix of DevExpress.Net components and old Vb6 and cobol dialogues. It would be great, if they looked alike.

      Nadezhda (DevExpress Support) 10 years ago

        Hello,

        To process your recent post more efficiently, I created a separate ticket on your behalf: Implement a capability to skin third-party components. This ticket is currently in our processing queue. Our team will address it as soon as we have any updates.

        Disclaimer: The information provided on DevExpress.com and affiliated web properties (including the DevExpress Support Center) is provided "as is" without warranty of any kind. Developer Express Inc disclaims all warranties, either express or implied, including the warranties of merchantability and fitness for a particular purpose. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.

        Confidential Information: Developer Express Inc does not wish to receive, will not act to procure, nor will it solicit, confidential or proprietary materials and information from you through the DevExpress Support Center or its web properties. Any and all materials or information divulged during chats, email communications, online discussions, Support Center tickets, or made available to Developer Express Inc in any manner will be deemed NOT to be confidential by Developer Express Inc. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.