-
Notifications
You must be signed in to change notification settings - Fork 1.5k
/
HyperLinkDesigner.xml
182 lines (159 loc) · 14.8 KB
/
HyperLinkDesigner.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
<Type Name="HyperLinkDesigner" FullName="System.Web.UI.Design.WebControls.HyperLinkDesigner">
<TypeSignature Language="C#" Value="public class HyperLinkDesigner : System.Web.UI.Design.TextControlDesigner" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit HyperLinkDesigner extends System.Web.UI.Design.TextControlDesigner" />
<TypeSignature Language="DocId" Value="T:System.Web.UI.Design.WebControls.HyperLinkDesigner" />
<TypeSignature Language="VB.NET" Value="Public Class HyperLinkDesigner
Inherits TextControlDesigner" />
<TypeSignature Language="F#" Value="type HyperLinkDesigner = class
 inherit TextControlDesigner" />
<TypeSignature Language="C++ CLI" Value="public ref class HyperLinkDesigner : System::Web::UI::Design::TextControlDesigner" />
<AssemblyInfo>
<AssemblyName>System.Design</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Web.UI.Design.TextControlDesigner</BaseTypeName>
</Base>
<Interfaces />
<Attributes>
<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">
<AttributeName Language="C#">[System.Web.UI.Design.SupportsPreviewControl(true)]</AttributeName>
<AttributeName Language="F#">[<System.Web.UI.Design.SupportsPreviewControl(true)>]</AttributeName>
</Attribute>
</Attributes>
<Docs>
<summary>Provides design-time support in a visual designer for the <see cref="T:System.Web.UI.WebControls.HyperLink" /> Web server control.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The <xref:System.Web.UI.WebControls.HyperLink> control creates a link for the client browser to navigate to another Web page.
In a visual designer, when you switch from Source to Design view, the markup source code that describes a <xref:System.Web.UI.WebControls.HyperLink> control is parsed and a design-time version of the control is created on the design surface. When you switch back to Source view, the design-time control is persisted to the markup source code and edited into the markup for the Web page. The <xref:System.Web.UI.Design.WebControls.HyperLinkDesigner> class provides design-time support for the <xref:System.Web.UI.WebControls.HyperLink> control.
The <xref:System.Web.UI.Design.WebControls.HyperLinkDesigner.GetDesignTimeHtml%2A> method returns the markup that is used to render the associated <xref:System.Web.UI.WebControls.HyperLink> control at design time. The <xref:System.Web.UI.Design.WebControls.HyperLinkDesigner.OnComponentChanged%2A> method is called when there is a change to the associated control.
## Examples
This section contains two code examples. The first one demonstrates how to derive a class from the <xref:System.Web.UI.Design.WebControls.HyperLinkDesigner> class, override a method, and supply a property value. The second one demonstrates how to derive a control from the <xref:System.Web.UI.WebControls.HyperLink> control and apply an attribute on the derived control.
The following code example shows how to derive a `CustomHyperLinkDesigner` class from the <xref:System.Web.UI.Design.WebControls.HyperLinkDesigner> class. It overrides the <xref:System.Web.UI.Design.WebControls.HyperLinkDesigner.GetDesignTimeHtml%2A> method to supply a default value for the <xref:System.Web.UI.WebControls.HyperLink.Text%2A> property if the original value for the <xref:System.Web.UI.WebControls.HyperLink.Text%2A> is an empty string (""). This ensures that the associated control will be visible at design time.
:::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/HyperLinkDesigner_Resubmit/CS/CustomHyperLinkDesigner.cs" id="Snippet1":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/HyperLinkDesigner_Resubmit/VB/customhyperlinkdesigner.vb" id="Snippet1":::
The following code example shows how to derive the `CustomHyperLink` control from the <xref:System.Web.UI.WebControls.HyperLink> control and apply a <xref:System.ComponentModel.DesignerAttribute> attribute on the `CustomHyperLink` control to associate it with the `CustomHyperLinkDesigner`.
:::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/HyperLinkDesigner_Resubmit/CS/CustomHyperLink.cs" id="Snippet3":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/HyperLinkDesigner_Resubmit/VB/customhyperlink.vb" id="Snippet3":::
]]></format>
</remarks>
<altmember cref="T:System.Web.UI.WebControls.HyperLink" />
<altmember cref="T:System.Web.UI.Design.TextControlDesigner" />
<altmember cref="T:System.Web.UI.Design.ControlDesigner" />
<altmember cref="T:System.Web.UI.Design.HtmlControlDesigner" />
<altmember cref="T:System.ComponentModel.Design.ComponentDesigner" />
<related type="Article" href="https://learn.microsoft.com/previous-versions/aspnet/wxh45wzs(v=vs.100)">Introduction to ASP.NET Control Designers</related>
<related type="Article" href="https://learn.microsoft.com/previous-versions/aspnet/12yydcke(v=vs.100)">Walkthrough: Creating a Basic Control Designer for a Web Server Control</related>
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public HyperLinkDesigner ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Web.UI.Design.WebControls.HyperLinkDesigner.#ctor" />
<MemberSignature Language="VB.NET" Value="Public Sub New ()" />
<MemberSignature Language="C++ CLI" Value="public:
 HyperLinkDesigner();" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>System.Design</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.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.Web.UI.Design.WebControls.HyperLinkDesigner" /> class.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The .NET Framework internally constructs a new instance of the <xref:System.Web.UI.Design.WebControls.HyperLinkDesigner> class when it creates the associated <xref:System.Web.UI.WebControls.HyperLink> control or a copy of the <xref:System.Web.UI.WebControls.HyperLink> control on the design surface.
]]></format>
</remarks>
<altmember cref="T:System.Web.UI.WebControls.HyperLink" />
<altmember cref="T:System.Web.UI.Design.TextControlDesigner" />
<altmember cref="T:System.Web.UI.Design.ControlDesigner" />
</Docs>
</Member>
<Member MemberName="GetDesignTimeHtml">
<MemberSignature Language="C#" Value="public override string GetDesignTimeHtml ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance string GetDesignTimeHtml() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Web.UI.Design.WebControls.HyperLinkDesigner.GetDesignTimeHtml" />
<MemberSignature Language="VB.NET" Value="Public Overrides Function GetDesignTimeHtml () As String" />
<MemberSignature Language="F#" Value="override this.GetDesignTimeHtml : unit -> string" Usage="hyperLinkDesigner.GetDesignTimeHtml " />
<MemberSignature Language="C++ CLI" Value="public:
 override System::String ^ GetDesignTimeHtml();" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.Design</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.String</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Gets the markup that is used to render the associated control at design time.</summary>
<returns>A string containing the markup used to render the associated hyperlink control at design time.</returns>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The <xref:System.Web.UI.Design.WebControls.HyperLinkDesigner.GetDesignTimeHtml%2A> method generates the design-time markup for the associated <xref:System.Web.UI.WebControls.HyperLink> control. The method first saves local copies of the <xref:System.Web.UI.WebControls.HyperLink.Text%2A>, <xref:System.Web.UI.WebControls.HyperLink.NavigateUrl%2A>, and <xref:System.Web.UI.WebControls.HyperLink.ImageUrl%2A> properties, as well as the <xref:System.Web.UI.Control.Controls%2A> child collection. It provides default values for these properties if the original values are `null` or blank. The <xref:System.Web.UI.Design.WebControls.HyperLinkDesigner.GetDesignTimeHtml%2A> method then calls the <xref:System.Web.UI.Design.TextControlDesigner.GetDesignTimeHtml%2A> base method to generate the markup and restores the properties and child control collection to their original values, if necessary.
## Examples
The following code example shows how to derive the `CustomHyperLinkDesigner` class from the <xref:System.Web.UI.Design.WebControls.HyperLinkDesigner> class. It overrides the <xref:System.Web.UI.Design.WebControls.HyperLinkDesigner.GetDesignTimeHtml%2A> method to supply a default value for the <xref:System.Web.UI.WebControls.HyperLink.Text%2A> property if the original value for <xref:System.Web.UI.WebControls.HyperLink.Text%2A> is an empty string (""). This ensures that the associated control will be visible at design time.
This code example is part of a larger example provided for the <xref:System.Web.UI.Design.WebControls.HyperLinkDesigner> class.
:::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/HyperLinkDesigner_Resubmit/CS/CustomHyperLinkDesigner.cs" id="Snippet1":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/HyperLinkDesigner_Resubmit/VB/customhyperlinkdesigner.vb" id="Snippet1":::
]]></format>
</remarks>
<altmember cref="T:System.Web.UI.WebControls.HyperLink" />
<altmember cref="M:System.Web.UI.Design.TextControlDesigner.GetDesignTimeHtml" />
<altmember cref="T:System.Web.UI.Design.ControlDesigner" />
</Docs>
</Member>
<Member MemberName="OnComponentChanged">
<MemberSignature Language="C#" Value="public override void OnComponentChanged (object sender, System.ComponentModel.Design.ComponentChangedEventArgs ce);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance void OnComponentChanged(object sender, class System.ComponentModel.Design.ComponentChangedEventArgs ce) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Web.UI.Design.WebControls.HyperLinkDesigner.OnComponentChanged(System.Object,System.ComponentModel.Design.ComponentChangedEventArgs)" />
<MemberSignature Language="VB.NET" Value="Public Overrides Sub OnComponentChanged (sender As Object, ce As ComponentChangedEventArgs)" />
<MemberSignature Language="F#" Value="override this.OnComponentChanged : obj * System.ComponentModel.Design.ComponentChangedEventArgs -> unit" Usage="hyperLinkDesigner.OnComponentChanged (sender, ce)" />
<MemberSignature Language="C++ CLI" Value="public:
 override void OnComponentChanged(System::Object ^ sender, System::ComponentModel::Design::ComponentChangedEventArgs ^ ce);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.Design</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="sender" Type="System.Object" Index="0" 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" />
<Parameter Name="ce" Type="System.ComponentModel.Design.ComponentChangedEventArgs" Index="1" 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" />
</Parameters>
<Docs>
<param name="sender">The object that is the source of the event.</param>
<param name="ce">A <see cref="T:System.ComponentModel.Design.ComponentChangedEventArgs" /> object that contains the event data.</param>
<summary>Called when there is a change to the associated control.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The <xref:System.Web.UI.Design.WebControls.HyperLinkDesigner.OnComponentChanged%2A> method is called when the <xref:System.ComponentModel.Design.IComponentChangeService.ComponentChanged> event of the associated <xref:System.Web.UI.WebControls.HyperLink> control is raised. Typically, this is in response to a property change on the control (for example, a **Properties** grid change).
The <xref:System.Web.UI.Design.WebControls.HyperLinkDesigner.OnComponentChanged%2A> creates a <xref:System.ComponentModel.Design.ComponentChangedEventArgs> object, and then calls the <xref:System.Web.UI.Design.ControlDesigner.OnComponentChanged%2A> base method.
]]></format>
</remarks>
<altmember cref="T:System.Web.UI.WebControls.HyperLink" />
<altmember cref="M:System.Web.UI.Design.ControlDesigner.OnComponentChanged(System.Object,System.ComponentModel.Design.ComponentChangedEventArgs)" />
<altmember cref="E:System.ComponentModel.Design.IComponentChangeService.ComponentChanged" />
<altmember cref="T:System.ComponentModel.Design.ComponentChangedEventArgs" />
</Docs>
</Member>
</Members>
</Type>