I am new to c# previously I used to work on vb.net and I have joined a new organisation where I have been assigned this following task. Posted below is my task. I need someone who could explain me this task as a layman.
We will be creating a new GUI: This GUI will be a generic GUI capable of allowing for configuration of all some Actions, without specific knowledge of each one. This will allow us to expand the components and variables of our system without the need to completely redo the GUI every time we alter a feature.
There is a new project I created within the solution. If you get the latest version of the solution from source control you should see it. There are currently no classes in it.
We need to create the following items:
A new Class GUICreator
This class will accept be responsible for creating a new Panel, which can be displayed within a Windows UI.
It should have an empty constructor and which accepts a profile name for future settings use
It needs a new function "CreatePanel" which accepts a list of GUIObject and returns a Panel, which can then be displayed in another application
A new class GUIControl
This class will contain the information about what type of element we are creating on the GUI
It should have the following(at a minimum):
Control: Windows Control
GetControl - This should return a the control to be used in the Panel based on the data type. For instance it could return a textbox or checkbox
ValidateData: this function will compare the data to the ValidationRegex of the GUIControl and return true or false
Save: This function will save the data based on the data name and profileName of this object
Load: this function will load the data based on the data name and profile name of this object
A new class Panel
This class will be a collection of GUIControl displayed on a panel in a readable layout
This should be a standard windows panel and have a tooltip object which will display the tooltip value for the GUIControl that is currently under the mouse
It will have a LoadFunction which calls the load function of all GUIControls
It will have a save function which calls the save of all GUIControls
The layout of the objects in the panel should default to a format that is both legible and able to be interacted with. This panel can then be displayed in various GUIs such as our user and admin tools to display all settings within the system in a generic way. It also provides flexibility for when we add a new variable or feature to the product we do not need to redesign the entire panel or GUI, we just need to add a new GUIControl object to the panel and everything will continue to work.
modified 14-Dec-17 3:31am.