-
Notifications
You must be signed in to change notification settings - Fork 1.6k
/
Copy pathContextMenuStrip.xml
357 lines (328 loc) · 25.2 KB
/
ContextMenuStrip.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
<Type Name="ContextMenuStrip" FullName="System.Windows.Forms.ContextMenuStrip">
<TypeSignature Language="C#" Value="public class ContextMenuStrip : System.Windows.Forms.ToolStripDropDownMenu" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit ContextMenuStrip extends System.Windows.Forms.ToolStripDropDownMenu" />
<TypeSignature Language="DocId" Value="T:System.Windows.Forms.ContextMenuStrip" />
<TypeSignature Language="VB.NET" Value="Public Class ContextMenuStrip
Inherits ToolStripDropDownMenu" />
<TypeSignature Language="F#" Value="type ContextMenuStrip = class
 inherit ToolStripDropDownMenu" />
<TypeSignature Language="C++ CLI" Value="public ref class ContextMenuStrip : System::Windows::Forms::ToolStripDropDownMenu" />
<AssemblyInfo>
<AssemblyName>System.Windows.Forms</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>5.0.0.0</AssemblyVersion>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
<AssemblyVersion>10.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Windows.Forms.ToolStripDropDownMenu</BaseTypeName>
</Base>
<Interfaces />
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.ComponentModel.DefaultEvent("Opening")]</AttributeName>
<AttributeName Language="F#">[<System.ComponentModel.DefaultEvent("Opening")>]</AttributeName>
</Attribute>
<Attribute FrameworkAlternate="netframework-2.0;netframework-3.0;netframework-3.5;netframework-4.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-4.8;netframework-4.8.1;windowsdesktop-3.0;windowsdesktop-3.1">
<AttributeName Language="C#">[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDispatch)]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDispatch)>]</AttributeName>
</Attribute>
<Attribute FrameworkAlternate="netframework-2.0;netframework-3.0;netframework-3.5;netframework-4.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-4.8;netframework-4.8.1;windowsdesktop-3.0;windowsdesktop-3.1">
<AttributeName Language="C#">[System.Runtime.InteropServices.ComVisible(true)]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.InteropServices.ComVisible(true)>]</AttributeName>
</Attribute>
<Attribute FrameworkAlternate="windowsdesktop-10.0;windowsdesktop-8.0;windowsdesktop-9.0">
<AttributeName Language="C#">[System.Runtime.CompilerServices.Nullable(0)]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.CompilerServices.Nullable(0)>]</AttributeName>
</Attribute>
</Attributes>
<Docs>
<summary>Represents a shortcut menu.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
<xref:System.Windows.Forms.ContextMenuStrip> replaces <xref:System.Windows.Forms.ContextMenu>. You can associate a <xref:System.Windows.Forms.ContextMenuStrip> with any control, and a right mouse click automatically displays the shortcut menu. You can show a <xref:System.Windows.Forms.ContextMenuStrip> programmatically by using the <xref:System.Windows.Forms.ToolStripDropDown.Show%2A> method. <xref:System.Windows.Forms.ContextMenuStrip> supports cancelable <xref:System.Windows.Forms.ToolStripDropDown.Opening> and <xref:System.Windows.Forms.ToolStripDropDown.Closing> events to handle dynamic population and multiple-click scenarios. <xref:System.Windows.Forms.ContextMenuStrip> supports images, menu-item check state, text, access keys, shortcuts, and cascading menus.
The following items are specifically designed to work seamlessly with both <xref:System.Windows.Forms.ToolStripSystemRenderer> and <xref:System.Windows.Forms.ToolStripProfessionalRenderer> in all orientations. They are available by default at design time for the <xref:System.Windows.Forms.ContextMenuStrip> control:
- <xref:System.Windows.Forms.ToolStripMenuItem>
- <xref:System.Windows.Forms.ToolStripSeparator>
- <xref:System.Windows.Forms.ToolStripTextBox>
- <xref:System.Windows.Forms.ToolStripComboBox>
Shortcut menus are typically used to combine different menu items from a <xref:System.Windows.Forms.MenuStrip> of a form that are useful for the user given the context of the application. For example, you can use a shortcut menu assigned to a <xref:System.Windows.Forms.TextBox> control to provide menu items for changing the font of the text, finding text within the control, or Clipboard features for copying and pasting text. You can also expose new <xref:System.Windows.Forms.ToolStripMenuItem> objects in a shortcut menu that are not located within a <xref:System.Windows.Forms.MenuStrip> to provide situation-specific commands that are inappropriate for the <xref:System.Windows.Forms.MenuStrip> to display.
Typically, a shortcut menu is displayed when a user clicks the right mouse button over a control or the form itself. Many visible controls, as well as the <xref:System.Windows.Forms.Form> itself, have a <xref:System.Windows.Forms.Control.ContextMenuStrip%2A?displayProperty=nameWithType> property that binds the <xref:System.Windows.Forms.ContextMenuStrip> class to the control that displays the shortcut menu. More than one control can use a <xref:System.Windows.Forms.ContextMenuStrip>.
Set the <xref:System.Windows.Forms.ToolStripDropDownMenu.ShowCheckMargin%2A?displayProperty=nameWithType> property to `true` to add space to the left of a <xref:System.Windows.Forms.ToolStripMenuItem> for a check mark that shows that the menu item is enabled or selected. The <xref:System.Windows.Forms.ToolStripDropDownMenu.ShowImageMargin%2A?displayProperty=nameWithType> property is set to `true` by default. Use this space to the left of the <xref:System.Windows.Forms.ToolStripMenuItem> to display an image for that menu item.
Although <xref:System.Windows.Forms.ContextMenuStrip> replaces and adds functionality to the <xref:System.Windows.Forms.ContextMenu> control of previous versions, <xref:System.Windows.Forms.ContextMenu> is retained for both backward compatibility and future use if so desired.
## Examples
The following code example demonstrates a <xref:System.Windows.Forms.ContextMenuStrip> with dynamic item addition, dynamic <xref:System.Windows.Forms.ContextMenuStrip.SourceControl%2A> determination with reuse, and handling of the <xref:System.Windows.Forms.ToolStripDropDown.Opening> event.
:::code language="csharp" source="~/snippets/csharp/System.Windows.Forms/ContextMenuStrip/Overview/Program.cs" id="Snippet40":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Windows.Forms.ToolStrip.Misc/VB/Program.vb" id="Snippet40":::
]]></format>
</remarks>
<altmember cref="T:System.Windows.Forms.ToolStripDropDownMenu" />
<altmember cref="P:System.Windows.Forms.ToolStripDropDownMenu.ShowCheckMargin" />
<altmember cref="P:System.Windows.Forms.ToolStripDropDownMenu.ShowImageMargin" />
<altmember cref="P:System.Windows.Forms.Control.ContextMenuStrip" />
<related type="Article" href="/dotnet/framework/winforms/controls/contextmenustrip-control">ContextMenuStrip Control</related>
</Docs>
<Members>
<MemberGroup MemberName=".ctor">
<AssemblyInfo>
<AssemblyName>System.Windows.Forms</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Docs>
<summary>Initializes a new instance of the <see cref="T:System.Windows.Forms.ContextMenuStrip" /> class.</summary>
</Docs>
</MemberGroup>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public ContextMenuStrip ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Forms.ContextMenuStrip.#ctor" />
<MemberSignature Language="VB.NET" Value="Public Sub New ()" />
<MemberSignature Language="C++ CLI" Value="public:
 ContextMenuStrip();" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>System.Windows.Forms</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>5.0.0.0</AssemblyVersion>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
<AssemblyVersion>10.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="netframework-4.0">
<AttributeName Language="C#">[System.Runtime.TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")>]</AttributeName>
</Attribute>
</Attributes>
<Parameters />
<Docs>
<summary>Initializes a new instance of the <see cref="T:System.Windows.Forms.ContextMenuStrip" /> class.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public ContextMenuStrip (System.ComponentModel.IContainer container);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(class System.ComponentModel.IContainer container) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Forms.ContextMenuStrip.#ctor(System.ComponentModel.IContainer)" />
<MemberSignature Language="VB.NET" Value="Public Sub New (container As IContainer)" />
<MemberSignature Language="F#" Value="new System.Windows.Forms.ContextMenuStrip : System.ComponentModel.IContainer -> System.Windows.Forms.ContextMenuStrip" Usage="new System.Windows.Forms.ContextMenuStrip container" />
<MemberSignature Language="C++ CLI" Value="public:
 ContextMenuStrip(System::ComponentModel::IContainer ^ container);" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>System.Windows.Forms</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>5.0.0.0</AssemblyVersion>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
<AssemblyVersion>10.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters>
<Parameter Name="container" Type="System.ComponentModel.IContainer" />
</Parameters>
<Docs>
<param name="container">A component that implements <see cref="T:System.ComponentModel.IContainer" /> that is the container of the <see cref="T:System.Windows.Forms.ContextMenuStrip" />.</param>
<summary>Initializes a new instance of the <see cref="T:System.Windows.Forms.ContextMenuStrip" /> class and associates it with the specified container.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Use this constructor to ensure that the <xref:System.Windows.Forms.ContextMenuStrip> is disposed of properly, since it is not a child of the form.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="Dispose">
<MemberSignature Language="C#" Value="protected override void Dispose (bool disposing);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance void Dispose(bool disposing) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Forms.ContextMenuStrip.Dispose(System.Boolean)" />
<MemberSignature Language="VB.NET" Value="Protected Overrides Sub Dispose (disposing As Boolean)" />
<MemberSignature Language="F#" Value="override this.Dispose : bool -> unit" Usage="contextMenuStrip.Dispose disposing" />
<MemberSignature Language="C++ CLI" Value="protected:
 override void Dispose(bool disposing);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.Windows.Forms</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>5.0.0.0</AssemblyVersion>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
<AssemblyVersion>10.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="disposing" Type="System.Boolean" />
</Parameters>
<Docs>
<param name="disposing">
<see langword="true" /> to release both managed and unmanaged resources; <see langword="false" /> to release only unmanaged resources.</param>
<summary>Releases the unmanaged resources used by the <see cref="T:System.Windows.Forms.ContextMenuStrip" /> and optionally releases the managed resources.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
This method is called by the public `Dispose()` method and the <xref:System.Object.Finalize> method, if it has been overridden. `Dispose()` invokes this method with the `disposing` parameter set to `true`. `Finalize` invokes this method with `disposing` set to `false`.
When the `disposing` parameter is true, this method releases all resources held by any managed objects that this <xref:System.Windows.Forms.ContextMenuStrip> references. This method invokes the `Dispose` method of each referenced object.
]]></format>
</remarks>
<block subset="none" type="overrides">
<para>
<see langword="Dispose" /> can be called multiple times by other objects. When overriding <see langword="Dispose(Boolean)" /> be careful not to reference objects that have been previously disposed of in an earlier call to <see langword="Dispose" />. For more information about how to implement <see langword="Dispose(Boolean)" />, see <see href="/dotnet/standard/garbage-collection/implementing-dispose">Implementing a Dispose Method</see>.
For more information about <see langword="Dispose" /> and <see cref="M:System.Object.Finalize" />, see <see href="/dotnet/standard/garbage-collection/unmanaged">Cleaning Up Unmanaged Resources</see>, and <see href="https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/ddae83kx(v=vs.100)">Overriding the Finalize Method</see>.</para>
</block>
</Docs>
</Member>
<Member MemberName="OnClosed">
<MemberSignature Language="C#" Value="protected override void OnClosed (System.Windows.Forms.ToolStripDropDownClosedEventArgs e);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance void OnClosed(class System.Windows.Forms.ToolStripDropDownClosedEventArgs e) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Forms.ContextMenuStrip.OnClosed(System.Windows.Forms.ToolStripDropDownClosedEventArgs)" />
<MemberSignature Language="VB.NET" Value="Protected Overrides Sub OnClosed (e As ToolStripDropDownClosedEventArgs)" />
<MemberSignature Language="F#" Value="override this.OnClosed : System.Windows.Forms.ToolStripDropDownClosedEventArgs -> unit" Usage="contextMenuStrip.OnClosed e" />
<MemberSignature Language="C++ CLI" Value="protected:
 override void OnClosed(System::Windows::Forms::ToolStripDropDownClosedEventArgs ^ e);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.Windows.Forms</AssemblyName>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
<AssemblyVersion>10.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="e" Type="System.Windows.Forms.ToolStripDropDownClosedEventArgs" Index="0" FrameworkAlternate="windowsdesktop-8.0;windowsdesktop-9.0;windowsdesktop-10.0" />
</Parameters>
<Docs>
<param name="e">To be added.</param>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="OnOpened">
<MemberSignature Language="C#" Value="protected override void OnOpened (EventArgs e);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance void OnOpened(class System.EventArgs e) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Forms.ContextMenuStrip.OnOpened(System.EventArgs)" />
<MemberSignature Language="VB.NET" Value="Protected Overrides Sub OnOpened (e As EventArgs)" />
<MemberSignature Language="F#" Value="override this.OnOpened : EventArgs -> unit" Usage="contextMenuStrip.OnOpened e" />
<MemberSignature Language="C++ CLI" Value="protected:
 override void OnOpened(EventArgs ^ e);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.Windows.Forms</AssemblyName>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
<AssemblyVersion>10.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="e" Type="System.EventArgs" Index="0" FrameworkAlternate="windowsdesktop-8.0;windowsdesktop-9.0;windowsdesktop-10.0" />
</Parameters>
<Docs>
<param name="e">To be added.</param>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="SetVisibleCore">
<MemberSignature Language="C#" Value="protected override void SetVisibleCore (bool visible);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance void SetVisibleCore(bool visible) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Forms.ContextMenuStrip.SetVisibleCore(System.Boolean)" />
<MemberSignature Language="VB.NET" Value="Protected Overrides Sub SetVisibleCore (visible As Boolean)" />
<MemberSignature Language="F#" Value="override this.SetVisibleCore : bool -> unit" Usage="contextMenuStrip.SetVisibleCore visible" />
<MemberSignature Language="C++ CLI" Value="protected:
 override void SetVisibleCore(bool visible);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.Windows.Forms</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>5.0.0.0</AssemblyVersion>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
<AssemblyVersion>10.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="visible" Type="System.Boolean" />
</Parameters>
<Docs>
<param name="visible">
<see langword="true" /> to make the control visible; otherwise, <see langword="false" />.</param>
<summary>Sets the control to the specified visible state.</summary>
<remarks>To be added.</remarks>
<altmember cref="M:System.Windows.Forms.Control.SetVisibleCore(System.Boolean)" />
</Docs>
</Member>
<Member MemberName="SourceControl">
<MemberSignature Language="C#" Value="public System.Windows.Forms.Control SourceControl { get; }" FrameworkAlternate="netframework-2.0;netframework-3.0;netframework-3.5;netframework-4.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-4.8;netframework-4.8.1;windowsdesktop-3.0;windowsdesktop-3.1;windowsdesktop-5.0;windowsdesktop-6.0" />
<MemberSignature Language="ILAsm" Value=".property instance class System.Windows.Forms.Control SourceControl" />
<MemberSignature Language="DocId" Value="P:System.Windows.Forms.ContextMenuStrip.SourceControl" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property SourceControl As Control" />
<MemberSignature Language="F#" Value="member this.SourceControl : System.Windows.Forms.Control" Usage="System.Windows.Forms.ContextMenuStrip.SourceControl" />
<MemberSignature Language="C++ CLI" Value="public:
 property System::Windows::Forms::Control ^ SourceControl { System::Windows::Forms::Control ^ get(); };" />
<MemberSignature Language="C#" Value="public System.Windows.Forms.Control? SourceControl { get; }" FrameworkAlternate="windowsdesktop-10.0;windowsdesktop-7.0;windowsdesktop-8.0;windowsdesktop-9.0" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Windows.Forms</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>5.0.0.0</AssemblyVersion>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
<AssemblyVersion>10.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.ComponentModel.Browsable(false)]</AttributeName>
<AttributeName Language="F#">[<System.ComponentModel.Browsable(false)>]</AttributeName>
</Attribute>
<Attribute FrameworkAlternate="netframework-2.0;netframework-3.0;netframework-3.5;netframework-4.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-4.8;netframework-4.8.1;windowsdesktop-10.0;windowsdesktop-3.0;windowsdesktop-3.1;windowsdesktop-5.0;windowsdesktop-6.0;windowsdesktop-8.0;windowsdesktop-9.0">
<AttributeName Language="C#">[System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Hidden)]</AttributeName>
<AttributeName Language="F#">[<System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Hidden)>]</AttributeName>
</Attribute>
<Attribute FrameworkAlternate="windowsdesktop-10.0;windowsdesktop-8.0;windowsdesktop-9.0">
<AttributeName Language="C#">[System.Runtime.CompilerServices.Nullable(2)]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.CompilerServices.Nullable(2)>]</AttributeName>
</Attribute>
<Attribute FrameworkAlternate="windowsdesktop-7.0">
<AttributeName Language="C#">[System.ComponentModel.DesignerSerializationVisibility]</AttributeName>
<AttributeName Language="F#">[<System.ComponentModel.DesignerSerializationVisibility>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Windows.Forms.Control</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets the last control that caused this <see cref="T:System.Windows.Forms.ContextMenuStrip" /> to be displayed.</summary>
<value>The control that caused this <see cref="T:System.Windows.Forms.ContextMenuStrip" /> to be displayed.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Common uses of the <xref:System.Windows.Forms.ContextMenuStrip.SourceControl%2A> property include the following:
- Adding, removing, enabling, or disabling a menu item during the <xref:System.Windows.Forms.ToolStripDropDown.Opening> event.
- Deciding on modifications of a chosen command based on the control that last displayed the <xref:System.Windows.Forms.ContextMenuStrip>.
## Examples
The following code example demonstrates dynamic <xref:System.Windows.Forms.ContextMenuStrip.SourceControl%2A> determination with reuse, and handling of the <xref:System.Windows.Forms.ToolStripDropDown.Opening> event. This example is part of a larger example provided for the <xref:System.Windows.Forms.ContextMenuStrip> class.
:::code language="csharp" source="~/snippets/csharp/System.Windows.Forms/ContextMenuStrip/Overview/Program.cs" id="Snippet42":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Windows.Forms.ToolStrip.Misc/VB/Program.vb" id="Snippet42":::
]]></format>
</remarks>
</Docs>
</Member>
</Members>
</Type>