HyperLinkDesigner 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
在視覺化設計工具中,為 HyperLink Web 伺服器控制項提供設計階段支援。
public ref class HyperLinkDesigner : System::Web::UI::Design::TextControlDesigner
public class HyperLinkDesigner : System.Web.UI.Design.TextControlDesigner
[System.Web.UI.Design.SupportsPreviewControl(true)]
public class HyperLinkDesigner : System.Web.UI.Design.TextControlDesigner
type HyperLinkDesigner = class
inherit TextControlDesigner
[<System.Web.UI.Design.SupportsPreviewControl(true)>]
type HyperLinkDesigner = class
inherit TextControlDesigner
Public Class HyperLinkDesigner
Inherits TextControlDesigner
- 繼承
- 屬性
範例
本節包含兩個程式碼範例。 第一個示範如何從 HyperLinkDesigner 類別衍生類別、覆寫 方法,以及提供屬性值。 第二個示範如何從控件衍生控件, HyperLink 並在衍生控件上套用屬性。
下列程式代碼範例示範如何從 HyperLinkDesigner 類別衍生CustomHyperLinkDesigner
類別。 如果的原始值為Text空字串,則會覆寫 GetDesignTimeHtml 方法,以提供 屬性的預設值Text, (“”) 。 這可確保在設計時間會顯示相關聯的控制件。
// Derive the CustomHyperLinkDesigner from the HyperLinkDesigner.
public class CustomHyperLinkDesigner : HyperLinkDesigner
{
// Override the GetDesignTimeHtml to set the CustomHyperLink Text
// property so that it displays at design time.
public override string GetDesignTimeHtml()
{
CustomHyperLink hype = (CustomHyperLink)Component;
string designTimeMarkup = null;
// Save the original Text and note if it is empty.
string text = hype.Text;
bool noText = (text.Trim().Length == 0);
try
{
// If the Text is empty, supply a default value.
if (noText)
hype.Text = "Click here.";
// Call the base method to generate the markup.
designTimeMarkup = base.GetDesignTimeHtml();
}
catch (Exception ex)
{
// If an error occurs, generate the markup for an error message.
designTimeMarkup = GetErrorDesignTimeHtml(ex);
}
finally
{
// Restore the original value of the Text, if necessary.
if (noText)
hype.Text = text;
}
// If the markup is empty, generate the markup for a placeholder.
if(designTimeMarkup == null || designTimeMarkup.Length == 0)
designTimeMarkup = GetEmptyDesignTimeHtml();
return designTimeMarkup;
} // GetDesignTimeHtml
} // CustomHyperLinkDesigner
' Derive the CustomHyperLinkDesigner from the HyperLinkDesigner.
Public Class CustomHyperLinkDesigner
Inherits HyperLinkDesigner
' Override the GetDesignTimeHtml to set the CustomHyperLink Text
' property so that it displays at design time.
Public Overrides Function GetDesignTimeHtml() As String
Dim hype As CustomHyperLink = CType(Component, CustomHyperLink)
Dim designTimeMarkup As String = Nothing
' Save the original Text and note if it is empty.
Dim text As String = hype.Text
Dim noText As Boolean = (text.Trim().Length = 0)
Try
' If the Text is empty, supply a default value.
If noText Then
hype.Text = "Click here."
End If
' Call the base method to generate the markup.
designTimeMarkup = MyBase.GetDesignTimeHtml()
Catch ex As Exception
' If an error occurs, generate the markup for an error message.
designTimeMarkup = GetErrorDesignTimeHtml(ex)
Finally
' Restore the original value of the Text, if necessary.
If noText Then
hype.Text = text
End If
End Try
' If the markup is empty, generate the markup for a placeholder.
If ((designTimeMarkup = Nothing) Or _
(designTimeMarkup.Length = 0)) Then
designTimeMarkup = GetEmptyDesignTimeHtml()
End If
Return designTimeMarkup
End Function ' GetDesignTimeHtml
End Class
下列程式代碼範例示範如何從控件衍生CustomHyperLink
控件,HyperLink並在控件上CustomHyperLink
套用 DesignerAttribute 屬性,使其與CustomHyperLinkDesigner
產生關聯。
using System.Web;
using System.Web.UI.WebControls;
using System.ComponentModel;
using System.Security.Permissions;
namespace Examples.CS.WebControls.Design
{
// The CustomHyperLink is a copy of the HyperLink.
// It uses the CustomHyperLinkDesigner for design-time support.
[AspNetHostingPermission(SecurityAction.Demand,
Level = AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermission(SecurityAction.InheritanceDemand,
Level = AspNetHostingPermissionLevel.Minimal)]
[Designer(typeof(Examples.CS.WebControls.Design.
CustomHyperLinkDesigner))]
public class CustomHyperLink : HyperLink
{
} // CustomHyperLink
} // Examples.CS.WebControls.Design
Imports System.Web
Imports System.ComponentModel
Imports System.Web.UI.WebControls
Imports System.Security.Permissions
Namespace Examples.VB.WebControls.Design
' The CustomHyperLink is a copy of the HyperLink.
' It uses the CustomHyperLinkDesigner for design-time support.
<AspNetHostingPermission(SecurityAction.Demand, _
Level:=AspNetHostingPermissionLevel.Minimal)> _
<AspNetHostingPermission(SecurityAction.InheritanceDemand, _
Level:=AspNetHostingPermissionLevel.Minimal)> _
<Designer(GetType(Examples.VB.WebControls.Design. _
CustomHyperLinkDesigner))> _
Public Class CustomHyperLink
Inherits HyperLink
End Class
End Namespace ' Examples.VB.WebControls.Design
備註
控件 HyperLink 會建立客戶端瀏覽器的連結,以巡覽至另一個網頁。
在可視化設計工具中,當您從 [來源] 切換至 [設計] 檢視時,會剖析描述 HyperLink 控件的標記原始程式碼,並在設計介面上建立控件的設計時間版本。 當您切換回 [來源] 檢視時,設計時間控件會保存到標記原始程式碼,並編輯成網頁的標記。 類別 HyperLinkDesigner 提供控制件的設計時間支援 HyperLink 。
方法會 GetDesignTimeHtml 傳回在設計時間用來呈現相關聯 HyperLink 控件的標記。 當相關聯控件有變更時,就會 OnComponentChanged 呼叫 方法。
建構函式
HyperLinkDesigner() |
初始化 HyperLinkDesigner 類別的新執行個體。 |
屬性
ActionLists |
取得控制項設計工具的動作清單集合。 (繼承來源 ControlDesigner) |
AllowResize |
取得值,指出是否可在設計階段環境中調整控制項的大小。 (繼承來源 ControlDesigner) |
AssociatedComponents |
取得元件集合,該集合與設計工具管理的元件相關聯。 (繼承來源 ComponentDesigner) |
AutoFormats |
針對設計階段的相關聯控制項,取得要在 [自動格式化] 對話方塊中顯示之預先定義的自動格式化配置集合。 (繼承來源 ControlDesigner) |
Behavior |
已淘汰.
取得或設定與設計工具相關聯的 DHTML 行為。 (繼承來源 HtmlControlDesigner) |
Component |
取得這個設計工具正在設計的元件。 (繼承來源 ComponentDesigner) |
DataBindings |
取得目前控制項的資料繫結 (Data Binding) 集合。 (繼承來源 HtmlControlDesigner) |
DataBindingsEnabled |
取得值,指出關聯控制項的包含區域是否支援資料繫結。 (繼承來源 ControlDesigner) |
DesignerState |
取得物件,用於在設計階段保存關聯控制項的資料。 (繼承來源 ControlDesigner) |
DesignTimeElement |
已淘汰.
取得設計階段物件,表示與設計介面上 HtmlControlDesigner 物件相關聯的控制項。 (繼承來源 HtmlControlDesigner) |
DesignTimeElementView |
已淘汰.
取得控制項設計工具的檢視控制項物件。 (繼承來源 ControlDesigner) |
DesignTimeHtmlRequiresLoadComplete |
已淘汰.
取得值,指出設計主應用程式在呼叫 GetDesignTimeHtml 方法之前是否必須完成載入。 (繼承來源 ControlDesigner) |
Expressions |
在設計階段取得目前控制項的運算式繫結。 (繼承來源 HtmlControlDesigner) |
HidePropertiesInTemplateMode |
取得值,指示當控制項處於樣板模式時,關聯控制項的屬性是否會隱藏。 (繼承來源 ControlDesigner) |
ID |
取得或設定控制項的 ID 字串。 (繼承來源 ControlDesigner) |
InheritanceAttribute |
取得屬性 (Attribute),表示相關元件的繼承 (Inheritance) 型別。 (繼承來源 ComponentDesigner) |
Inherited |
取得值,表示是否要繼承這個元件。 (繼承來源 ComponentDesigner) |
InTemplateMode |
取得值,指出控制項在設計主應用程式中處於樣板檢視模式還是編輯模式。 InTemplateMode 屬性是唯讀的。 (繼承來源 ControlDesigner) |
IsDirty |
已淘汰.
取得或設定值,指出 Web 伺服器控制項是否已標記為變更。 (繼承來源 ControlDesigner) |
ParentComponent |
取得這個設計工具的父元件。 (繼承來源 ComponentDesigner) |
ReadOnly |
已淘汰.
取得或設定值,指出控制項屬性於設計階段是否為唯讀。 (繼承來源 ControlDesigner) |
RootDesigner |
為包含關聯控制項的 Web Form 網頁,取得控制項設計工具。 (繼承來源 ControlDesigner) |
SetTextualDefaultProperty |
在視覺化設計工具中,為 HyperLink Web 伺服器控制項提供設計階段支援。 (繼承來源 ComponentDesigner) |
ShadowProperties |
取得覆寫使用者設定的屬性值集合。 (繼承來源 ComponentDesigner) |
ShouldCodeSerialize |
已淘汰.
取得或設定值,指出是否應該於序列化 (Serialization) 期間,在程式碼後置 (Code-Behind) 檔案中為目前設計文件建立控制項的欄位宣告。 (繼承來源 HtmlControlDesigner) |
Tag |
取得物件,表示關聯控制項的 HTML 標記項目。 (繼承來源 ControlDesigner) |
TemplateGroups |
取得範本群組集合,各範本群組包含一個或多個範本定義。 (繼承來源 ControlDesigner) |
UsePreviewControl |
取得值,其中該值會表示控制項設計工具是否使用暫時預覽控制項以產生設計階段 HTML 標記。 (繼承來源 ControlDesigner) |
Verbs |
取得與設計工具相關元件所支援的設計階段動詞命令 (Verb)。 (繼承來源 ComponentDesigner) |
ViewControl |
取得或設定 Web 伺服器控制項,可用於預覽設計階段的 HTML 標記。 (繼承來源 ControlDesigner) |
ViewControlCreated |
取得或設定值,指出是否已建立 |
Visible |
取得值,這個值表示控制項在設計階段是否為可見的。 (繼承來源 ControlDesigner) |
方法
明確介面實作
IDesignerFilter.PostFilterAttributes(IDictionary) |
如需這個成員的描述,請參閱 PostFilterAttributes(IDictionary) 方法。 (繼承來源 ComponentDesigner) |
IDesignerFilter.PostFilterEvents(IDictionary) |
如需這個成員的描述,請參閱 PostFilterEvents(IDictionary) 方法。 (繼承來源 ComponentDesigner) |
IDesignerFilter.PostFilterProperties(IDictionary) |
如需這個成員的描述,請參閱 PostFilterProperties(IDictionary) 方法。 (繼承來源 ComponentDesigner) |
IDesignerFilter.PreFilterAttributes(IDictionary) |
如需這個成員的描述,請參閱 PreFilterAttributes(IDictionary) 方法。 (繼承來源 ComponentDesigner) |
IDesignerFilter.PreFilterEvents(IDictionary) |
如需這個成員的描述,請參閱 PreFilterEvents(IDictionary) 方法。 (繼承來源 ComponentDesigner) |
IDesignerFilter.PreFilterProperties(IDictionary) |
如需這個成員的描述,請參閱 PreFilterProperties(IDictionary) 方法。 (繼承來源 ComponentDesigner) |
ITreeDesigner.Children |
如需這個成員的描述,請參閱 Children 屬性。 (繼承來源 ComponentDesigner) |
ITreeDesigner.Parent |
如需這個成員的描述,請參閱 Parent 屬性。 (繼承來源 ComponentDesigner) |