Design of Windows based .Net Application RRS feed

  • Question

  • Hi All,


    I have a 3-tier windows .net application. I want to know how should I decide the decide the design of GUI interface (presentation layer). There are lots of controls on the Main form like, 3 tabcontrols,On one tab page - 2 treeview, 6 datagridviews, many picture boxes, 8 splitContainers, panels, textboxes, buttons, toolbart menu bar....etc etc..


    Overall design is as I said is 3 tier - DAL, Data classes, GUI (form classes). I want to know how to develop the form classes so as to have improve performance and reduction in the usage of memory. Does overriding of Control's classes ( Datagridview, treeview ) reduces memory usage? I may sound stupid by asking such an obvious question. But i seriously want to know what are the guidelines to design and code the user interface.




    Friday, October 3, 2008 3:59 AM

All replies

  • Obviously I don't know your specific user interface requirements but it seems that your main form has a lot of controls. 


    General guidelines on user interface design advise not overloading the user with too much information.  Therefore, I would consider splitting your main form to organise the information.


    This would improve performance and memory usage but maybe your requirements are such that your main form cannot be split?


    Friday, October 3, 2008 8:22 AM
  • Without knowing too many details about your requirements, I am providing a general answer.  Take the below with a grain of salt.


    Take a look at Smart Client Software Factory[SCSF] that has guidance packages on some of the user interface elements.  It has a out of the box reference architecture for line of business application.


    Also take a look at the .NET enterprise application framework I have published in  The composite application in the user experience layer boils down to what SCSF could be.


    { Gaja; }

    Friday, October 3, 2008 2:45 PM
  • The ideal way is to load only those controls what is required on the UI screen. Eg. if you have multiple tabs, you can

    create the contents of the different tab as separate controls and load them when user switches to that specific tab. The less the number of controls on the UI, it will definitely help in UI painting and performance.


    Does overriding of Control's classes ( Datagridview, treeview ) reduces memory usage?

    Ofcourse No Smile


    Hope this helps...

    Friday, October 10, 2008 2:30 PM