Reusing Forms
-
I'm fairly new to the C# environment but coming from Delphi, most of what we've been doing has been very familiar. Primarily, the difference has been syntax and a few new features we didn't have. An important technique we used a lot was the reusing of forms. This was done by creating a form, such as an address form, and reuse it in several areas. The exact same form would be used in the maintenance of people, shipping, billing, etc. while and underlying class property dictated the rules of the form. Why do this? The flexibility and look of MDI was not nearly what we desired or needed. Instead, we created a form with panels in it. We then positioned the panels where we wanted them. We could then take a completed form (whose parent is SELF by default) and set the parent property to the panel. The second line of code set the form's alignment to client. This essentially pasted the form into the panel. This gave us the ability to have a developer build the central application while other tasks were divided by specialty. Now, if I were putting together something that needed the module that needed an address, I'd put a panel in the main application and just paste the address form into the panel at run time. I'd them use the class methods and procedures to move information appropriately. What I'd like to do is perform this same type of task in C#. I've tried a few things but I'm not getting past the fact that a form is a "top level control". The impression I get is C# treats controls in a heirarchal form and a panel is lower than a form. Once the form is identified as such, I'm not allowed to put the form into a "lower" type control. Are there any suggestions for doing something similar to this? This is quite a powerful technique that can be utilized even better in C# than in Delphi because of the ability to build multiple interfaces (shipping address maintenance, billing address maintenance, personal address maintenance, etc) and utilize them as the task requires.
-
I'm fairly new to the C# environment but coming from Delphi, most of what we've been doing has been very familiar. Primarily, the difference has been syntax and a few new features we didn't have. An important technique we used a lot was the reusing of forms. This was done by creating a form, such as an address form, and reuse it in several areas. The exact same form would be used in the maintenance of people, shipping, billing, etc. while and underlying class property dictated the rules of the form. Why do this? The flexibility and look of MDI was not nearly what we desired or needed. Instead, we created a form with panels in it. We then positioned the panels where we wanted them. We could then take a completed form (whose parent is SELF by default) and set the parent property to the panel. The second line of code set the form's alignment to client. This essentially pasted the form into the panel. This gave us the ability to have a developer build the central application while other tasks were divided by specialty. Now, if I were putting together something that needed the module that needed an address, I'd put a panel in the main application and just paste the address form into the panel at run time. I'd them use the class methods and procedures to move information appropriately. What I'd like to do is perform this same type of task in C#. I've tried a few things but I'm not getting past the fact that a form is a "top level control". The impression I get is C# treats controls in a heirarchal form and a panel is lower than a form. Once the form is identified as such, I'm not allowed to put the form into a "lower" type control. Are there any suggestions for doing something similar to this? This is quite a powerful technique that can be utilized even better in C# than in Delphi because of the ability to build multiple interfaces (shipping address maintenance, billing address maintenance, personal address maintenance, etc) and utilize them as the task requires.
make these "forms" as usercontrols instead.