August 29, 2002 - Structuring Windows Form Applications | WebReference

August 29, 2002 - Structuring Windows Form Applications

Yehuda Shiran August 29, 2002
Structuring Windows Form Applications
Tips: August 2002

Yehuda Shiran, Ph.D.
Doc JavaScript

A Windows form application may include a panel, a textbox, a label, and a button. Let's assume that the panel contains the other three controls (the textbox, the label, and the button), and that it anchors them. When you anchor Control A to Control B, Control A will follow the movement of Control B and will keep its fixed distance from it. When you anchor a button to the left edge of its containing panel, for example, the button will follow the movement of the panel's left edge when you resize the panel. If you move the panel's left edge by 10 pixels to the left, for example, the button will also move 10 pixels to the left. The button will move to the right when you resize the panel inward (by moving its left edge to the right).

The code is built from four major sections. The import section, the package statement, the class section, and the Application.Run section. The import section includes references to namespaces which contribute classes to our code. By specifying these namespaces up front, we avoid repeating the namespace names when we call their classes (there are no class name collisions). Here are the four namespaces we import:

  import System;
  import System.Windows.Forms;
  import System.ComponentModel;
  import System.Drawing;
The package statement declares the package name (ResizeMe):

  package ResizeMe {
The class section defines the panel, the textbox, the button, the label, and their properties. These controls are defined first, followed by a constructor function of the class, PanelForm(), which must have the same name as the class name:

  class PanelForm extends System.Windows.Forms.Form {   
        private var label1: Label;
        private var textBox1: TextBox;
        private var button1: Button;
        private var panel1: Panel;
        function PanelForm() {                         
          .
		  .
		  .
		  .
		  .
        } 
The Application.Run section creates the new class and runs it:

  Application.Run(new ResizeMe.PanelForm())
Here is the structure of the code, comprised of these four sections:

  import System;
  import System.Windows.Forms;
  import System.ComponentModel;
  import System.Drawing;
  package ResizeMe
    class PanelForm extends System.Windows.Forms.Form {   
        private var label1: Label;
        private var textBox1: TextBox;
        private var button1: Button;
        private var panel1: Panel;
        function PanelForm() {                         
          .
		  .
		  .
		  .
		  .
        }
    }
  }
  Application.Run(new ResizeMe.PanelForm());
To learn more about JScript .NET and ASP.NET, go to Column 117, JScript .NET, Part XI: Creating Windows Forms.