Click here to Skip to main content
15,867,704 members
Please Sign up or sign in to vote.
1.00/5 (1 vote)
Hi,

I'm looking for some advice/information on a program I want to develop. I have some experience programming (mostly) in C# and using the .Net framework.

In the program I want to develop, I want the user to be able to design a custom GUI to suit their needs by adding/removing some predefined controls (buttons mostly). These controls have certain properties that the user can set. In addition I want the user to be able to choose the location of the controls in the window. I also want the users to be able to store the GUI they've designed.

I was wondering if anybody could give me some advice on the best approach for this kind of program? what language would you use for the controls? how would you store and retrieve the data of the designed, custom gui? are there any specific aspects I should pay particular attention to?

any help would be much appreciated.
Posted
Comments
Sergey Alexandrovich Kryukov 17-Aug-15 16:23pm    
This cannot be a serious question. It all depends on your goals and requirements, your audience, and a lot more. There could be too many different designs for custom UI.
—SA
Philippe Mori 17-Aug-15 21:23pm    
WPF might be a better option than WinForms since it already has the layout in a XAML file and data binding is more powerful.

1 solution

It is a question of capturing information as the user makes their selection. Assuming you allow them to drag and drop the control onto some surface, you need to capture the control type and its properties (color, location, size etc) as they select it. You can then write this information into a file which you can later use to recreate the user's form. Exactly what form this all takes is for you to decide, but you could make use of existing markup types such as XML or XAML.
 
Share this answer
 
Comments
Member 11915503 18-Aug-15 8:26am    
Thank you for your response. I was indeed thinking about xaml. I guess what I was most interested in is how to store and retrieve the data efficiently. Would it be better to use a seperate file for each designed GUI or would a database be better? In case of the seperate file, what file type would be best? Would you use a custom data file type for this? what would be the pro's and con's of the various options?
I apologize in advance if these questions seem very rudimentary. So far, most of the programs I've written have been for classes or personal use. I'm just trying to figure out if there is a more 'professional' approach to this kind of program. (this particular program would be used by other colleague's at work, who are not particularly computer savvy)
Richard MacCutchan 18-Aug-15 12:34pm    
Well it's really a question of making choices based on your users' needs. If each user will be running the program on a separate computer, then it may be best to store the data in a local file. And the file type will depend on the content, so for XML it would be a .xml file. But it could be a pure .txt file, or something you design yourself to hold the information in some binary form. From the information you have given us I would not think a database would gain you much; unless you expect to have hundreds or even thousands of users.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900