You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When followed by an additional keyword, terminates the definition of the statement block introduced by that keyword.
12
-
13
-
## Syntax
14
-
15
-
```
16
-
End AddHandler
17
-
End Class
18
-
End Enum
19
-
End Event
20
-
End Function
21
-
End Get
22
-
End If
23
-
End Interface
24
-
End Module
25
-
End Namespace
26
-
End Operator
27
-
End Property
11
+
12
+
When followed by an additional keyword, terminates the definition of the statement block introduced by that keyword.
13
+
14
+
## Syntax
15
+
16
+
```vb
17
+
EndAddHandler
18
+
EndClass
19
+
EndEnum
20
+
EndEvent
21
+
EndFunction
22
+
EndGet
23
+
EndIf
24
+
EndInterface
25
+
EndModule
26
+
EndNamespace
27
+
EndOperator
28
+
EndProperty
28
29
EndRaiseEvent
29
30
EndRemoveHandler
30
-
End Select
31
-
End Set
32
-
End Structure
33
-
End Sub
34
-
End SyncLock
35
-
End Try
36
-
End While
31
+
EndSelect
32
+
EndSet
33
+
EndStructure
34
+
EndSub
35
+
EndSyncLock
36
+
EndTry
37
+
EndWhile
37
38
EndWith
38
39
```
39
40
40
-
## Parts
41
-
`End`
42
-
Required. Terminates the definition of the programming element.
43
-
44
-
`AddHandler`
45
-
Required to terminate an `AddHandler` accessor begun by a matching `AddHandler` statement in a custom [Event Statement](../../../visual-basic/language-reference/statements/event-statement.md).
46
-
47
-
`Class`
48
-
Required to terminate a class definition begun by a matching [Class Statement](../../../visual-basic/language-reference/statements/class-statement.md).
49
-
50
-
`Enum`
51
-
Required to terminate an enumeration definition begun by a matching [Enum Statement](../../../visual-basic/language-reference/statements/enum-statement.md).
52
-
53
-
`Event`
54
-
Required to terminate a `Custom` event definition begun by a matching [Event Statement](../../../visual-basic/language-reference/statements/event-statement.md).
55
-
56
-
`Function`
57
-
Required to terminate a `Function` procedure definition begun by a matching [Function Statement](../../../visual-basic/language-reference/statements/function-statement.md). If execution encounters an `End``Function` statement, control returns to the calling code.
58
-
59
-
`Get`
60
-
Required to terminate a `Property` procedure definition begun by a matching [Get Statement](../../../visual-basic/language-reference/statements/get-statement.md). If execution encounters an `End``Get` statement, control returns to the statement requesting the property's value.
61
-
62
-
`If`
63
-
Required to terminate an `If`...`Then`...`Else` block definition begun by a matching `If` statement. See [If...Then...Else Statement](../../../visual-basic/language-reference/statements/if-then-else-statement.md).
64
-
65
-
`Interface`
66
-
Required to terminate an interface definition begun by a matching [Interface Statement](../../../visual-basic/language-reference/statements/interface-statement.md).
67
-
68
-
`Module`
69
-
Required to terminate a module definition begun by a matching [Module Statement](../../../visual-basic/language-reference/statements/module-statement.md).
70
-
71
-
`Namespace`
72
-
Required to terminate a namespace definition begun by a matching [Namespace Statement](../../../visual-basic/language-reference/statements/namespace-statement.md).
73
-
74
-
`Operator`
75
-
Required to terminate an operator definition begun by a matching [Operator Statement](../../../visual-basic/language-reference/statements/operator-statement.md).
76
-
77
-
`Property`
78
-
Required to terminate a property definition begun by a matching [Property Statement](../../../visual-basic/language-reference/statements/property-statement.md).
79
-
80
-
`RaiseEvent`
81
-
Required to terminate a `RaiseEvent` accessor begun by a matching `RaiseEvent` statement in a custom [Event Statement](../../../visual-basic/language-reference/statements/event-statement.md).
82
-
83
-
`RemoveHandler`
84
-
Required to terminate a `RemoveHandler` accessor begun by a matching `RemoveHandler` statement in a custom [Event Statement](../../../visual-basic/language-reference/statements/event-statement.md).
85
-
86
-
`Select`
87
-
Required to terminate a `Select`...`Case` block definition begun by a matching `Select` statement. See [Select...Case Statement](../../../visual-basic/language-reference/statements/select-case-statement.md).
88
-
89
-
`Set`
90
-
Required to terminate a `Property` procedure definition begun by a matching [Set Statement](../../../visual-basic/language-reference/statements/set-statement.md). If execution encounters an `End``Set` statement, control returns to the statement setting the property's value.
91
-
92
-
`Structure`
93
-
Required to terminate a structure definition begun by a matching [Structure Statement](../../../visual-basic/language-reference/statements/structure-statement.md).
94
-
95
-
`Sub`
96
-
Required to terminate a `Sub` procedure definition begun by a matching [Sub Statement](../../../visual-basic/language-reference/statements/sub-statement.md). If execution encounters an `End``Sub` statement, control returns to the calling code.
97
-
98
-
`SyncLock`
99
-
Required to terminate a `SyncLock` block definition begun by a matching `SyncLock` statement. See [SyncLock Statement](../../../visual-basic/language-reference/statements/synclock-statement.md).
100
-
101
-
`Try`
102
-
Required to terminate a `Try`...`Catch`...`Finally` block definition begun by a matching `Try` statement. See [Try...Catch...Finally Statement](../../../visual-basic/language-reference/statements/try-catch-finally-statement.md).
103
-
104
-
`While`
105
-
Required to terminate a `While` loop definition begun by a matching `While` statement. See [While...End While Statement](../../../visual-basic/language-reference/statements/while-end-while-statement.md).
106
-
107
-
`With`
108
-
Required to terminate a `With` block definition begun by a matching `With` statement. See [With...End With Statement](../../../visual-basic/language-reference/statements/with-end-with-statement.md).
109
-
110
-
## Remarks
111
-
The [End Statement](../../../visual-basic/language-reference/statements/end-statement.md), without an additional keyword, terminates execution immediately.
112
-
113
-
When preceded by a number sign (`#`), the `End` keyword terminates a preprocessing block introduced by the corresponding directive.
114
-
115
-
`#End`
116
-
Required. Terminates the definition of the preprocessing block.
117
-
118
-
`#ExternalSource`
119
-
Required to terminate an external source block begun by a matching [#ExternalSource Directive](../../../visual-basic/language-reference/directives/externalsource-directive.md).
120
-
121
-
`#If`
122
-
Required to terminate a conditional compilation block begun by a matching `#If` directive. See [#If...Then...#Else Directives](../../../visual-basic/language-reference/directives/if-then-else-directives.md).
123
-
124
-
`#Region`
125
-
Required to terminate a source region block begun by a matching [#Region Directive](../../../visual-basic/language-reference/directives/region-directive.md).
126
-
41
+
## Parts
42
+
43
+
|Part|Description|
44
+
|---|---|
45
+
|`End`|Required. Terminates the definition of the programming element.|
46
+
|`AddHandler`|Required to terminate an `AddHandler` accessor begun by a matching `AddHandler` statement in a custom [Event Statement](event-statement.md).|
47
+
|`Class`|Required to terminate a class definition begun by a matching [Class Statement](class-statement.md).|
48
+
|`Enum`|Required to terminate an enumeration definition begun by a matching [Enum Statement](enum-statement.md).|
49
+
|`Event`|Required to terminate a `Custom` event definition begun by a matching [Event Statement](event-statement.md).|
50
+
|`Function`|Required to terminate a `Function` procedure definition begun by a matching [Function Statement](function-statement.md). If execution encounters an `End Function` statement, control returns to the calling code.|
51
+
|`Get`|Required to terminate a `Property` procedure definition begun by a matching [Get Statement](get-statement.md). If execution encounters an `End Get` statement, control returns to the statement requesting the property's value.|
52
+
|`If`|Required to terminate an `If`...`Then`...`Else` block definition begun by a matching `If` statement. See [If...Then...Else Statement](if-then-else-statement.md).|
53
+
|`Interface`|Required to terminate an interface definition begun by a matching [Interface Statement](interface-statement.md).|
54
+
|`Module`|Required to terminate a module definition begun by a matching [Module Statement](module-statement.md).|
55
+
|`Namespace`|Required to terminate a namespace definition begun by a matching [Namespace Statement](namespace-statement.md).|
56
+
|`Operator`|Required to terminate an operator definition begun by a matching [Operator Statement](operator-statement.md).|
57
+
|`Property`|Required to terminate a property definition begun by a matching [Property Statement](property-statement.md).|
58
+
|`RaiseEvent`|Required to terminate a `RaiseEvent` accessor begun by a matching `RaiseEvent` statement in a custom [Event Statement](event-statement.md).|
59
+
|`RemoveHandler`|Required to terminate a `RemoveHandler` accessor begun by a matching `RemoveHandler` statement in a custom [Event Statement](event-statement.md).|
60
+
|`Select`|Required to terminate a `Select`...`Case` block definition begun by a matching `Select` statement. See [Select...Case Statement](select-case-statement.md).
61
+
|`Set`|Required to terminate a `Property` procedure definition begun by a matching [Set Statement](set-statement.md). If execution encounters an `End Set` statement, control returns to the statement setting the property's value.
62
+
|`Structure`|Required to terminate a structure definition begun by a matching [Structure Statement](structure-statement.md).
63
+
|`Sub`|Required to terminate a `Sub` procedure definition begun by a matching [Sub Statement](sub-statement.md). If execution encounters an `End Sub` statement, control returns to the calling code.
64
+
|`SyncLock`|Required to terminate a `SyncLock` block definition begun by a matching `SyncLock` statement. See [SyncLock Statement](synclock-statement.md).
65
+
|`Try`|Required to terminate a `Try`...`Catch`...`Finally` block definition begun by a matching `Try` statement. See [Try...Catch...Finally Statement](try-catch-finally-statement.md).
66
+
|`While`|Required to terminate a `While` loop definition begun by a matching `While` statement. See [While...End While Statement](while-end-while-statement.md).
67
+
|`With`| Required to terminate a `With` block definition begun by a matching `With` statement. See [With...End With Statement](with-end-with-statement.md).
68
+
|||
69
+
70
+
## Directives
71
+
72
+
When preceded by a number sign (`#`), the `End` keyword terminates a preprocessing block introduced by the corresponding directive.
73
+
74
+
```vb
75
+
#EndExternalSource
76
+
#EndIf
77
+
#EndRegion
78
+
```
79
+
80
+
|Part|Description|
81
+
|---|---|
82
+
|`#End`|Required. Terminates the definition of the preprocessing block.|
83
+
|`#ExternalSource`|Required to terminate an external source block begun by a matching [#ExternalSource Directive](../directives/externalsource-directive.md).|
84
+
|`#If`|Required to terminate a conditional compilation block begun by a matching `#If` directive. See [#If...Then...#Else Directives](../directives/if-then-else-directives.md).|
85
+
|`#Region`|Required to terminate a source region block begun by a matching [#Region Directive](../directives/region-directive.md).|
86
+
|||
87
+
88
+
## Remarks
89
+
90
+
The [End Statement](end-statement.md), without an additional keyword, terminates execution immediately.
91
+
127
92
## Smart Device Developer Notes
128
-
The `End` statement, without an additional keyword, is not supported.
93
+
94
+
The `End` statement, without an additional keyword, is not supported.
0 commit comments