Give an XP look for all controls on all Windows Operating Systems in CSharp DotNet.

Posted on 2006-05-28
Last Modified: 2012-05-05

I am developing a CSharp Dotnet Application using .NET framework v 1.1 . I need to give the application an XP look and this look should be maintained on any windows operating system( win 98/ME/2000/XP/2003).
Question by:Anisha
    LVL 20

    Accepted Solution

    You need to make you custom controls, which are owner drawn and draw them manually. If you want your controls to be themes aware, you need to implement this as well. I would say that this is a huge task.
    LVL 1

    Assisted Solution

    I'm not sure if this works for .NET 1.1, but this article may be worth reading:

    You might also want to see about changing the manifest file to support theming:
    LVL 20

    Expert Comment

    These solutions will work for Windows XP, but not for Windows 98/NT/2000
    LVL 1

    Expert Comment

    I'm sorry, I did not notice that part of his request.

    You may want to look into using GTK+ from .NET, or Swing inside Java. Both of these systems offer lightweight components that preserve Look And Feels.
    LVL 11

    Expert Comment

    TheAvanger is right, you will have to make all the rendering by yourself.
    you could derive all the controls you need and overriding the wndproc, in which you do all your painting on the wm_paint message.
    if you wanna implement custom drawing for listviews and treeviews, it is a lot of more work because you will have to to react on wm_notify messages of each item(listviewitem or treeviewitem) and make all the rendering for it.
    i hope you will have a good reason for that because it is a lot of work.

    Featured Post

    Do You Know the 4 Main Threat Actor Types?

    Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

    Join & Write a Comment

    Extention Methods in C# 3.0 by Ivo Stoykov C# 3.0 offers extension methods. They allow extending existing classes without changing the class's source code or relying on inheritance. These are static methods invoked as instance method. This…
    Introduction Hi all and welcome to my first article on Experts Exchange. A while ago, someone asked me if i could do some tutorials on object oriented programming. I decided to do them on C#. Now you may ask me, why's that? Well, one of the re…
    Get a first impression of how PRTG looks and learn how it works.   This video is a short introduction to PRTG, as an initial overview or as a quick start for new PRTG users.
    Here's a very brief overview of the methods PRTG Network Monitor ( offers for monitoring bandwidth, to help you decide which methods you´d like to investigate in more detail.  The methods are covered in more detail in o…

    746 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    16 Experts available now in Live!

    Get 1:1 Help Now