Manipulating Forms with the Windows Forms Library (Page 1 of 4 )
In this third part of a four-part series, you will learn how to use .NET's Windows Forms Library to make forms and controls interact with each other. This article is excerpted from chapter four of the
Visual Basic 2005 Cookbook, written by Tim Patrick and John Clark Craig (O'Reilly; ISBN: 0596101775). Copyright © 2006 O'Reilly Media, Inc. All rights reserved. Used with permission from the publisher. Available from booksellers or direct from O'Reilly Media.
4.10 Remembering a Form’s Position Between Uses
Problem
You would like the position of a form to be retained between exiting the application (or closing that form) and the next time you access that same form.
Solution
Sample code folder: Chapter 04\RememberFormPosition
Tie the form’sLocationproperty to a member of theMy.Settingsobject. You do this using the form’s application-setting property bindings.
Create a new Windows Forms application. Access the Project Properties window through the Project -> WindowsApplication1 Properties (or similar) menu command. Select the Settings tab in this window, as shown in Figure 4-5.

Figure 4-5. The Settings tab of the Properties window
In the first row of the Settings grid, set the Name field toMainFormLocation, and selectSystem.Drawing.Pointin the Type field (Figure 4-6). Close the Project Properties window.

Figure 4-6. The added MainFormLocation property
Back onForm1, expand its(ApplicationSettings)property. One of the subproperties should beLocation. Change its value toMainFormLocation.
The program is ready to use. Run it, and move the form to a conspicuous location. Then exit the program. When you run the program again, the form will be where you moved it.
Discussion
If, when you expand the (ApplicationSettings) property, you don’t see theLocationsubproperty, use the(PropertyBinding)subproperty instead. Click on the “...” button in its value area to display the “Application Settings for ‘Form1’” dialog. Locate theLocationentry in the form’s settings list, and set its value toMainFormLocation, as shown in Figure 4-7.

Figure 4-7. The Application Settings dialog for Form1
Any settings added to the Settings tab in the Project Properties window appear as members of theMy.Settingsobject. In this recipe’s case, you get a new property of typeSystem.Drawing.Pointwith the nameMy.Settings.MainFormLocation. You can access this property as needed in your code.
Another way to add a control-linked setting is to skip the trip to the Project Properties’ window’s Settings panel, and add the new setting directly from the control’s list of properties. When you select the(ApplicationSettings)property for the form or control and bring up the Application Settings dialog (Figure 4-7), if you click the drop-down button in the second column for any property, one of the choices that appears is “(new).” Clicking this link brings up the New Application Setting dialog, where you can enter the name and starting value of a new setting. The new property automatically obtains the right data type for the linked field. Figure 4-8 shows this method in action.

Figure 4-8. Adding a new setting for the form's Location property
Next: 4.11 Attaching a Control to the Edge of a Form >>
More Visual Basic.NET Articles
More By O'Reilly Media
|
This article is excerpted from chapter four of the Visual Basic 2005 Cookbook, written by Tim Patrick and John Clark Craig (O'Reilly; ISBN: 0596101775). Check it out today at your favorite bookstore. Buy this book now.
|
|