Name
With Statement
Syntax
Withobject[statements] End With
-
object(required; Object) A previously declared object variable or user-defined type
-
statements(optional) Program code to execute against
object
Description
This statement is used to execute a series of statements on an object without having to qualify each statement with the object name.
Rules at a Glance
The single object referred to in the
Withstatement remains the same throughout the code contained within theWith...EndWithblock. Therefore, only properties and methods ofobjectcan be used within the code block without explicitly referencing the object. All other object references within theWith...EndWithstatement must start with a fully qualified object reference.Withstatements can be nested, as long as the innerWithstatement refers to a subobject or a dependent object of the outerWithstatement.A member of
objectis referenced within aWithblock by omitting the object name and simply including a period and the member name.
Example
Public Structure Point Dim x As Integer Dim y As Integer End Structure Public Sub Main Dim udtPt As POINT With udtPt .x = 10 .y = 100 End With Console.Writeline(udtpt.x) End Sub
Programming Tips and Gotchas
It is important that you do not include code within the
With statement block that forces execution to
branch out of the block. Similarly, do not write code that forces
program flow to jump into a With block. Both the
With and its associated End
With statement must be executed, ...