/
IPropertyValueUIService.xml
261 lines (250 loc) · 19.2 KB
/
IPropertyValueUIService.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
<Type Name="IPropertyValueUIService" FullName="System.Drawing.Design.IPropertyValueUIService">
<TypeSignature Language="C#" Value="public interface IPropertyValueUIService" />
<TypeSignature Language="ILAsm" Value=".class public interface auto ansi abstract IPropertyValueUIService" FrameworkAlternate="netframework-1.1;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;windowsdesktop-7.0;windowsdesktop-8.0" />
<TypeSignature Language="DocId" Value="T:System.Drawing.Design.IPropertyValueUIService" />
<TypeSignature Language="VB.NET" Value="Public Interface IPropertyValueUIService" />
<TypeSignature Language="F#" Value="type IPropertyValueUIService = interface" />
<TypeSignature Language="C++ CLI" Value="public interface class IPropertyValueUIService" />
<TypeSignature Language="ILAsm" Value=".class public interface auto ansi abstract beforefieldinit IPropertyValueUIService" FrameworkAlternate="windowsdesktop-9.0" />
<AssemblyInfo>
<AssemblyName>System.Drawing</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.Windows.Forms</AssemblyName>
<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>
</AssemblyInfo>
<Interfaces />
<Attributes>
<Attribute FrameworkAlternate="windowsdesktop-8.0;windowsdesktop-9.0">
<AttributeName Language="C#">[System.Runtime.CompilerServices.NullableContext(1)]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.CompilerServices.NullableContext(1)>]</AttributeName>
</Attribute>
</Attributes>
<Docs>
<summary>Provides an interface to manage the images, ToolTips, and event handlers for the properties of a component displayed in a property browser.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
A component can use the <xref:System.Drawing.Design.IPropertyValueUIService> interface to provide <xref:System.Drawing.Design.PropertyValueUIItem> objects for any properties of the component. A <xref:System.Drawing.Design.PropertyValueUIItem> associated with a property can provide an image, a ToolTip and an event handler for the event that is raised when the image associated with the property is clicked.
The <xref:System.Drawing.Design.IPropertyValueUIService> interface provides methods to add, remove, and retrieve <xref:System.Drawing.Design.PropertyValueUIHandler> delegates to or from an internal list. When the properties of a component are displayed in a property browser, each <xref:System.Drawing.Design.PropertyValueUIHandler> in the list is given an opportunity to provide a <xref:System.Drawing.Design.PropertyValueUIItem> for each property of the component.
When a property browser is set to display the properties of an object, it calls the <xref:System.Drawing.Design.IPropertyValueUIService.GetPropertyUIValueItems%2A> method of this interface for each property of the component, passing a <xref:System.ComponentModel.PropertyDescriptor> that represents the property. The <xref:System.Drawing.Design.IPropertyValueUIService.GetPropertyUIValueItems%2A> method calls each <xref:System.Drawing.Design.PropertyValueUIHandler> that has been added to the service. Each <xref:System.Drawing.Design.PropertyValueUIHandler> can add a <xref:System.Drawing.Design.PropertyValueUIItem> to the <xref:System.Collections.ArrayList> parameter passed in the `valueUIItemList` parameter to supply UI items for the property represented by the <xref:System.ComponentModel.PropertyDescriptor> passed in the `propDesc` parameter.
A <xref:System.Drawing.Design.PropertyValueUIItem> can contain an image to display next to the property name, a ToolTip string, and an event handler to invoke when an image associated with the property is double-clicked.
## Examples
The following code example creates a component that obtains an instance of the <xref:System.Drawing.Design.IPropertyValueUIService> interface and adds a <xref:System.Drawing.Design.PropertyValueUIHandler> to the service. The handler provides a <xref:System.Drawing.Design.PropertyValueUIItem> object for any properties of the component named `HorizontalMargin` or `VerticalMargin`. The <xref:System.Drawing.Design.PropertyValueUIItem> for these properties provides an image, a ToolTip, and an event handler that displays a message box when the image for the property is clicked. The image and the ToolTip are displayed in a <xref:System.Windows.Forms.PropertyGrid> when the grid is showing these properties of the component.
:::code language="csharp" source="~/snippets/csharp/System.Drawing.Design/IPropertyValueUIService/Overview/propertyuicomponent.cs" id="Snippet1":::
]]></format>
</remarks>
<altmember cref="T:System.Drawing.Design.PropertyValueUIHandler" />
<altmember cref="T:System.Drawing.Design.PropertyValueUIItem" />
</Docs>
<Members>
<Member MemberName="AddPropertyValueUIHandler">
<MemberSignature Language="C#" Value="public void AddPropertyValueUIHandler (System.Drawing.Design.PropertyValueUIHandler newHandler);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void AddPropertyValueUIHandler(class System.Drawing.Design.PropertyValueUIHandler newHandler) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Drawing.Design.IPropertyValueUIService.AddPropertyValueUIHandler(System.Drawing.Design.PropertyValueUIHandler)" />
<MemberSignature Language="VB.NET" Value="Public Sub AddPropertyValueUIHandler (newHandler As PropertyValueUIHandler)" />
<MemberSignature Language="F#" Value="abstract member AddPropertyValueUIHandler : System.Drawing.Design.PropertyValueUIHandler -> unit" Usage="iPropertyValueUIService.AddPropertyValueUIHandler newHandler" />
<MemberSignature Language="C++ CLI" Value="public:
 void AddPropertyValueUIHandler(System::Drawing::Design::PropertyValueUIHandler ^ newHandler);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.Drawing</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.Windows.Forms</AssemblyName>
<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>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="newHandler" Type="System.Drawing.Design.PropertyValueUIHandler" />
</Parameters>
<Docs>
<param name="newHandler">The property value UI handler to add.</param>
<summary>Adds the specified <see cref="T:System.Drawing.Design.PropertyValueUIHandler" /> to this service.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
When <xref:System.Drawing.Design.IPropertyValueUIService.GetPropertyUIValueItems%2A> is called, each handler added to this service is called and given the opportunity to add an icon for the property.
]]></format>
</remarks>
<altmember cref="T:System.Drawing.Design.PropertyValueUIHandler" />
</Docs>
</Member>
<Member MemberName="GetPropertyUIValueItems">
<MemberSignature Language="C#" Value="public System.Drawing.Design.PropertyValueUIItem[] GetPropertyUIValueItems (System.ComponentModel.ITypeDescriptorContext context, System.ComponentModel.PropertyDescriptor propDesc);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Drawing.Design.PropertyValueUIItem[] GetPropertyUIValueItems(class System.ComponentModel.ITypeDescriptorContext context, class System.ComponentModel.PropertyDescriptor propDesc) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Drawing.Design.IPropertyValueUIService.GetPropertyUIValueItems(System.ComponentModel.ITypeDescriptorContext,System.ComponentModel.PropertyDescriptor)" />
<MemberSignature Language="VB.NET" Value="Public Function GetPropertyUIValueItems (context As ITypeDescriptorContext, propDesc As PropertyDescriptor) As PropertyValueUIItem()" />
<MemberSignature Language="F#" Value="abstract member GetPropertyUIValueItems : System.ComponentModel.ITypeDescriptorContext * System.ComponentModel.PropertyDescriptor -> System.Drawing.Design.PropertyValueUIItem[]" Usage="iPropertyValueUIService.GetPropertyUIValueItems (context, propDesc)" />
<MemberSignature Language="C++ CLI" Value="public:
 cli::array <System::Drawing::Design::PropertyValueUIItem ^> ^ GetPropertyUIValueItems(System::ComponentModel::ITypeDescriptorContext ^ context, System::ComponentModel::PropertyDescriptor ^ propDesc);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.Drawing</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.Windows.Forms</AssemblyName>
<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>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Drawing.Design.PropertyValueUIItem[]</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.ComponentModel.ITypeDescriptorContext" />
<Parameter Name="propDesc" Type="System.ComponentModel.PropertyDescriptor" />
</Parameters>
<Docs>
<param name="context">An <see cref="T:System.ComponentModel.ITypeDescriptorContext" /> that can be used to gain additional context information.</param>
<param name="propDesc">A <see cref="T:System.ComponentModel.PropertyDescriptor" /> that indicates the property to match with the properties to return.</param>
<summary>Gets the <see cref="T:System.Drawing.Design.PropertyValueUIItem" /> objects that match the specified context and property descriptor characteristics.</summary>
<returns>An array of <see cref="T:System.Drawing.Design.PropertyValueUIItem" /> objects that match the specified parameters.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="NotifyPropertyValueUIItemsChanged">
<MemberSignature Language="C#" Value="public void NotifyPropertyValueUIItemsChanged ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void NotifyPropertyValueUIItemsChanged() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Drawing.Design.IPropertyValueUIService.NotifyPropertyValueUIItemsChanged" />
<MemberSignature Language="VB.NET" Value="Public Sub NotifyPropertyValueUIItemsChanged ()" />
<MemberSignature Language="F#" Value="abstract member NotifyPropertyValueUIItemsChanged : unit -> unit" Usage="iPropertyValueUIService.NotifyPropertyValueUIItemsChanged " />
<MemberSignature Language="C++ CLI" Value="public:
 void NotifyPropertyValueUIItemsChanged();" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.Drawing</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.Windows.Forms</AssemblyName>
<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>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Notifies the <see cref="T:System.Drawing.Design.IPropertyValueUIService" /> implementation that the global list of <see cref="T:System.Drawing.Design.PropertyValueUIItem" /> objects has been modified.</summary>
<remarks>To be added.</remarks>
<altmember cref="E:System.Drawing.Design.IPropertyValueUIService.PropertyUIValueItemsChanged" />
</Docs>
</Member>
<Member MemberName="PropertyUIValueItemsChanged">
<MemberSignature Language="C#" Value="event EventHandler PropertyUIValueItemsChanged;" FrameworkAlternate="netframework-1.1;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;windowsdesktop-7.0" />
<MemberSignature Language="ILAsm" Value=".event class System.EventHandler PropertyUIValueItemsChanged" />
<MemberSignature Language="DocId" Value="E:System.Drawing.Design.IPropertyValueUIService.PropertyUIValueItemsChanged" />
<MemberSignature Language="VB.NET" Value="Event PropertyUIValueItemsChanged As EventHandler " />
<MemberSignature Language="F#" Value="member this.PropertyUIValueItemsChanged : EventHandler " Usage="member this.PropertyUIValueItemsChanged : System.EventHandler " />
<MemberSignature Language="C++ CLI" Value="public:
 event EventHandler ^ PropertyUIValueItemsChanged;" />
<MemberSignature Language="C#" Value="event EventHandler? PropertyUIValueItemsChanged;" FrameworkAlternate="windowsdesktop-8.0;windowsdesktop-9.0" />
<MemberType>Event</MemberType>
<AssemblyInfo>
<AssemblyName>System.Drawing</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.Windows.Forms</AssemblyName>
<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>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="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-8.0;windowsdesktop-9.0">
<AttributeName Language="C#">[add: System.Runtime.CompilerServices.NullableContext(2)]</AttributeName>
<AttributeName Language="F#">[<add: System.Runtime.CompilerServices.NullableContext(2)>]</AttributeName>
</Attribute>
<Attribute FrameworkAlternate="windowsdesktop-8.0;windowsdesktop-9.0">
<AttributeName Language="C#">[remove: System.Runtime.CompilerServices.NullableContext(2)]</AttributeName>
<AttributeName Language="F#">[<remove: System.Runtime.CompilerServices.NullableContext(2)>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.EventHandler</ReturnType>
</ReturnValue>
<Docs>
<summary>Occurs when the list of <see cref="T:System.Drawing.Design.PropertyValueUIItem" /> objects is modified.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Components that serve <xref:System.Drawing.Design.PropertyValueUIItem> objects can call <xref:System.Drawing.Design.IPropertyValueUIService.NotifyPropertyValueUIItemsChanged%2A> when they change their list of items.
]]></format>
</remarks>
<altmember cref="T:System.Drawing.Design.PropertyValueUIItem" />
</Docs>
</Member>
<Member MemberName="RemovePropertyValueUIHandler">
<MemberSignature Language="C#" Value="public void RemovePropertyValueUIHandler (System.Drawing.Design.PropertyValueUIHandler newHandler);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void RemovePropertyValueUIHandler(class System.Drawing.Design.PropertyValueUIHandler newHandler) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Drawing.Design.IPropertyValueUIService.RemovePropertyValueUIHandler(System.Drawing.Design.PropertyValueUIHandler)" />
<MemberSignature Language="VB.NET" Value="Public Sub RemovePropertyValueUIHandler (newHandler As PropertyValueUIHandler)" />
<MemberSignature Language="F#" Value="abstract member RemovePropertyValueUIHandler : System.Drawing.Design.PropertyValueUIHandler -> unit" Usage="iPropertyValueUIService.RemovePropertyValueUIHandler newHandler" />
<MemberSignature Language="C++ CLI" Value="public:
 void RemovePropertyValueUIHandler(System::Drawing::Design::PropertyValueUIHandler ^ newHandler);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.Drawing</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.Windows.Forms</AssemblyName>
<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>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="newHandler" Type="System.Drawing.Design.PropertyValueUIHandler" />
</Parameters>
<Docs>
<param name="newHandler">The handler to remove.</param>
<summary>Removes the specified <see cref="T:System.Drawing.Design.PropertyValueUIHandler" /> from the property value UI service.</summary>
<remarks>To be added.</remarks>
<altmember cref="T:System.Drawing.Design.PropertyValueUIHandler" />
</Docs>
</Member>
</Members>
</Type>