Try this code:
Dim g as Graphics g = frmMain.CreateGraphics() g.DrawLine(Pens.Black, new Point(0,0), new Point(frmMain.ClientRectangle.Width), frmMain.ClientRectangle.Height) g.Dispose()
This should draw a line from the upper left to the bottom right corner of your application, but only if it’s visible. If this code isn’t in the paint event, when something obscures your application and/or it repaints, this line will *not* be redrawn.
(from sburke_online@microsoft..nospam..com on microsoft.public.dotnet.framework.windowsforms)
Another possible solution that has a design-time element is to use a label with height 1 and FixedSingle Border.
(suggested by Mark Lewis in microsoft.public.dotnet.framework.windowsforms)
You can specify events from different controls be handled by a single method. When you define your handler, you can list several events that are to be handled by listing them in the Handles argument. This statement handles three different textbox’s TextChanged event.
Private Sub TextsChanged(ByVal sender As System.Object, _ ByVal e As System.EventArgs) _ Handles TextBox1.TextChanged, TextBox2.TextChanged, TextBox3.TextChanged
In the TextsChanged handler, you may need to identify the particular control that fired the event. This sender parameter holds the control. You can use it with code such as:
Dim eventTextBox as TextBox = sender