Sign in to follow this  
Samurai Jack

How to make beautiful looking dot net applications?

Recommended Posts

Greetings! I was wondering, how is it possible to create beautiful GUI's with standard dot net components? I don't like to download any additional "free" packages. I would like to take geniune components and build an application. The problem is, everything seems so messed up and there is no head and no tail. If you just look at standard Windows Vista dialogs - they are beautiful. And they do not require fancy shmansy ultra super duper 3D graphics and stuff. Just some animations and great fonts. But they have structure! It's logical and it is simple and it makes you feel comfortable. How to achieve this? I do not like reading 200 x A4 pages on apple human guidelines or gnome human guidelines. Even if I create golden ratio components, my list box still looks boring and kinda unix like without any life at all. I would like something you weren't affraid of and it should be a joy to click it. Does anyone have a suggestion how to manage that? How to position list boxes? How to create some kind of data views?

Share this post


Link to post
Share on other sites
Most of the Windows XP controls are usign the XP Manifest. It's a form of skinning. Enabling the manifest will skin the controls accordingly.

However, I think you're more looking like guidelines on how to position controls in order to make them easy for users and still look HAWT. Well, that is a whole different field of study. There are people specialized in making user itnerfaces.

Toolmaker

Share this post


Link to post
Share on other sites
I'm not sure if this is what you're looking for, but I gave my applications a bit of a look-boost by loading up common controls. I do this by calling the functions InitCommonControls() (or for a better, newer way of doing it, check the code below) and by adding a manifest that loads the DLL.

To init common controls the 'right' way:


// I call this just before registering the window class
INITCOMMONCONTROLSEX init_cc;

init_cc.dwSize = sizeof(INITCOMMONCONTROLSEX);
init_cc.dwICC = ICC_BAR_CLASSES;
InitCommonControlsEx(&init_cc);



I then create a new file named 'extra.manifest' that I put in my application's working directory. This is it's content:


<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="X86" publicKeyToken="6595b64144ccf1df" language="*"/>
</dependentAssembly>
</dependency>
</assembly>



Now I go to my visual studio (2005) project properties, and select the 'manifest -> input and output' page. Add the filename of the new manifest file to the 'additional manifest files' field, and select 'yes' for 'embed manifest'.

This gives most controls a more slick look. You might have to install the .NET framework 2.0 to see the effects on your computer, I'm not totally sure. It also allows for using true-color icons and some more stuff.

Hope that helps

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this