WinForms FAQ - from VB6

Find answers for the most frequently asked questions
Expand All Collapse All

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)

Permalink

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
Permalink

Share with

Couldn't find the FAQs you're looking for?

Please submit your question and answer.