Solved

Recommended approach to using container controls

Posted on 2004-10-02
2
203 Views
Last Modified: 2010-04-15
I am not new to .Net in theory but in practice I am fairly new. I am building an application and I am faced with the typical problem of having N different ways of doing it but have not had sufficient experience with the tool to determine which option is the best. What I am after in this case is the accepted / standard / best way of achieving what I want to acheive.

Here is what I want to do.

I have an application that has the following interface

+----------+---------------------------+
|             |                                   |
|             |                                   |
|             |                                   |
|      A     |              B                   |
|             |                                   |
|             |                                   |
+             +---------------------------+
|             |                                   |
|             |             C                    |
+----------+---------------------------+

A = Tree Control
C = Static window that can have other controls placed on it (height of C is fixed but can vary on the width on a resize)
B = Something that can contain another control created at runtime.

The question is about B and C

First B:

I need to be able to dynamically create a control and place it in the area defined by B. The control will need to resize when the window resizes and/or when the slider (between the tree control and B/C) is moved. The main point here is I need some sort of parent entity that handles the resize of the dynamically created control - I don't want to have to handle the resize event in every control I create.

Along the lines of
In The ParentContrl
OnResize
  GetChildObject
  UpdateChildClientArea
  ResizeChild

What would be the best solution here?

Second C:

This will be used to contain 1 or more dynamically created controls like buttons and text boxes. Again I need something to contain these controls.

No need to post source code - unless you really want to - I am looking for the theory rather than the practice.
0
Comment
Question by:Julian Hansen
2 Comments
 
LVL 1

Accepted Solution

by:
CrazyIvan007 earned 500 total points
ID: 12207661
Create three Panels,

set A to Docking Left
set B to Docking Fill
set C to Docking Bottom

Then put your Treeview on Panel A

To resize the control in Panel B fetch the Resize Event of Panel B (or if its just a TreeView or ListView it will resize automatic)

You should think about to set Splitter between the Panels. For that create a new Panel Parent_BC where you have to set this Panel at the right Side of Panel A.

Step:

Create Panel A - Docking Left
Create Splitter - Set Docking to Right
Create Panel Parent_BC - Docking Fill
Create Panel C on Parent_BC - Docking Bottom
Create Splitter - Set Docking to Bottom
Create Panel B on Parent BC - Docking Fill

0
 
LVL 56

Author Comment

by:Julian Hansen
ID: 12212365
Thanks CrazyIvan - that got me started nicely.
0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

This article is for Object-Oriented Programming (OOP) beginners. An Interface contains declarations of events, indexers, methods and/or properties. Any class which implements the Interface should provide the concrete implementation for each Inter…
Exception Handling is in the core of any application that is able to dignify its name. In this article, I'll guide you through the process of writing a DRY (Don't Repeat Yourself) Exception Handling mechanism, using Aspect Oriented Programming.
In a recent question (https://www.experts-exchange.com/questions/29004105/Run-AutoHotkey-script-directly-from-Notepad.html) here at Experts Exchange, a member asked how to run an AutoHotkey script (.AHK) directly from Notepad++ (aka NPP). This video…

726 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