Hello,
I'm designing for users who are mostly using Windows XP, with the "Windows XP" theme enabled. This is the theme that, among other things, has the rounded / "glassy" buttons, and I'm having a little trouble with these buttons.
We will eventually be moving to a newer version of Windows, and I would like to have the look of my application update when that happens -> which I think will be the case if I UseOsThemes.
I have been asked in the meantime to make my UltraButtons look like Windows XP buttons for now, but when I use UseOsThemes, they don't take on the rounded / glassy look, but a boxy 3D look of the basic Windows theme instead.
Is there a way to inherit the OS look with the Windows XP theme applied and get those rounded / glassy buttons?
Hi,
If UseOsThemes is on, the buttons will look like the inbox buttons and use the system themes. If that is not happening, then something else in your application is turning off the themes.
My best guess is that you are using Application Styling and the isl file you are loading it turning off themes application-wide.
Hi Mike,
Yes, I am using Application Styling, but I can't find anywhere in the XML where theme are explicitly turned off. (I'm searching for useOsThemes).
Is there something I can search for / a place to explicitly enable themes?
Thank you Mike. That was indeed the setting I was looking for.
Any time you create a new StyleSet in AppStylist, it prompts you if you want to turn off themes. Turning off themes is strongly advised, since themes override everything else. So if you do not turn them off, a lot of things will not be styled by your isl file.
If you select "Yes, Turn Off" to turn off themes, then what happens is that AppStylist creates the new StyleSet and it sets the "Themed Element Alpha" on the "Base" role to transparent. This turns off Themes for all UIRoles, but still gives you the ability to override this on any other UIRole by explicitly setting "Themed Element Alpha" to Opaque.
So if you go into AppStylist and open up your Isl and go to the Base UIRole and look on the bottom in the "Other" group of properties you will see the "Themed Element Alpha" and it's got a red slash on it, which indicates transparent.
Changing this to Default will allow themes in your application, but I suspect you are not going to like the results, since this means you will be unable to change the colors, borders, or anything else on any of those objects.
So when you say you found how to turn Themes on, is that how you did it? I suspect you might have tried setting UseOsThemes on the AllComponents ControlRole to True. But that won't do anything - true is the default, anyway. It's the "Themed Element Alpha" you need to use here.
Ok, I've found the option in the app stylist to enable Os Themes globally, but I'm still not getting my OS buttons. Just the basic 3D box button, and not the rounded glassy one.