LabelDesigner 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
在視覺化設計工具中,為 Label Web 伺服器控制項提供設計階段支援。
public ref class LabelDesigner : System::Web::UI::Design::TextControlDesigner
public class LabelDesigner : System.Web.UI.Design.TextControlDesigner
[System.Web.UI.Design.SupportsPreviewControl(true)]
public class LabelDesigner : System.Web.UI.Design.TextControlDesigner
type LabelDesigner = class
inherit TextControlDesigner
[<System.Web.UI.Design.SupportsPreviewControl(true)>]
type LabelDesigner = class
inherit TextControlDesigner
Public Class LabelDesigner
Inherits TextControlDesigner
- 繼承
- 屬性
範例
下列程式代碼範例示範如何從 Label 控件衍生SampleLabel
控件,並在控件上SampleLabel
套用 DesignerAttribute 屬性,使其與 SampleLabelDesigner
類別產生關聯。
程式代碼範例也會從 LabelDesigner 類別衍生 SampleLabelDesigner
。 如果原始是 或 值,它會覆寫 GetDesignTimeHtml 方法,將屬性Dashed設定BorderStyle為 NotSetNoneBorderStyle 這可改善設計時間相關聯控件的可見度。
using System;
using System.Web;
using System.Web.UI.WebControls;
using System.Web.UI.Design.WebControls;
using System.ComponentModel;
using System.Security.Permissions;
namespace Examples.CS.WebControls.Design
{
// The SampleLabel is a copy of the Label.
[AspNetHostingPermission(SecurityAction.Demand,
Level = AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermission(SecurityAction.InheritanceDemand,
Level = AspNetHostingPermissionLevel.Minimal)]
[Designer(typeof(Examples.CS.WebControls.Design.SampleLabelDesigner))]
public class SampleLabel : Label
{
} // SampleLabel
// Override members of the LabelDesigner.
public class SampleLabelDesigner : LabelDesigner
{
// Generate the design-time markup.
public override string GetDesignTimeHtml()
{
// Make the control more visible in the designer. If the border
// style is None or NotSet, change the border to a dashed line.
SampleLabel sampleLabel = (SampleLabel)Component;
string designTimeMarkup = null;
// Check if the border style should be changed.
if (sampleLabel.BorderStyle == BorderStyle.NotSet ||
sampleLabel.BorderStyle == BorderStyle.None)
{
BorderStyle oldBorderStyle = sampleLabel.BorderStyle;
try
{
// Set the design-time BorderStyle.
sampleLabel.BorderStyle = BorderStyle.Dashed;
// Call the base method to generate the markup.
designTimeMarkup = base.GetDesignTimeHtml();
}
catch (Exception ex)
{
// If an exception occurs, generate an error message.
designTimeMarkup = GetErrorDesignTimeHtml(ex);
}
finally
{
// Restore the BorderStyle to its original setting.
sampleLabel.BorderStyle = oldBorderStyle;
}
}
else
{
// Call the base method to generate the markup.
designTimeMarkup = base.GetDesignTimeHtml();
}
return designTimeMarkup;
} // GetDesignTimeHtml
} // SampleLabelDesigner
} // Examples.CS.WebControls.Design
Imports System.Web
Imports System.ComponentModel
Imports System.Web.UI.WebControls
Imports System.Web.UI.Design.WebControls
Imports System.Security.Permissions
Namespace Examples.VB.WebControls.Design
' The SampleLabel is a copy of the Label.
<AspNetHostingPermission(SecurityAction.Demand, _
Level:=AspNetHostingPermissionLevel.Minimal)> _
<AspNetHostingPermission(SecurityAction.InheritanceDemand, _
Level:=AspNetHostingPermissionLevel.Minimal)> _
<Designer(GetType(Examples.VB.WebControls.Design.SampleLabelDesigner))> _
Public Class SampleLabel
Inherits Label
End Class
' Override members of the LabelDesigner.
Public Class SampleLabelDesigner
Inherits LabelDesigner
' Generate the design-time markup.
Public Overrides Function GetDesignTimeHtml() As String
' Make the control more visible in the designer. If the border
' style is None or NotSet, change the border to a dashed line.
Dim sampleLabel As SampleLabel = CType(Component, SampleLabel)
Dim designTimeMarkup As String = Nothing
' Check if the border style should be changed.
If (sampleLabel.BorderStyle = BorderStyle.NotSet Or _
sampleLabel.BorderStyle = BorderStyle.None) Then
Dim oldBorderStyle As BorderStyle = sampleLabel.BorderStyle
Try
' Set the design-time BorderStyle.
sampleLabel.BorderStyle = BorderStyle.Dashed
' Call the base method to generate the markup.
designTimeMarkup = MyBase.GetDesignTimeHtml()
Catch ex As Exception
' If an exception occurs, generate an error message.
designTimeMarkup = GetErrorDesignTimeHtml(ex)
Finally
' Restore the BorderStyle to its original setting.
sampleLabel.BorderStyle = oldBorderStyle
End Try
Else
' Call the base method to generate the markup.
designTimeMarkup = MyBase.GetDesignTimeHtml()
End If
Return designTimeMarkup
End Function ' GetDesignTimeHtml
End Class
End Namespace ' Examples.VB.WebControls.Design
備註
控制件 Label 允許以程式設計方式在網頁上顯示文字。
在可視化設計工具中,當您從 [來源] 切換至 [設計] 檢視時,會剖析描述 Label 控件的標記原始程式碼,並在設計介面上建立控件的設計時間版本。 當您切換回 [來源] 檢視時,設計時間控件會保存到標記原始程式碼,並編輯成網頁的標記。 類別 LabelDesigner 提供控制件的設計時間支援 Label 。
當相關聯的Label控件有變更時,會OnComponentChanged呼叫 方法。
建構函式
LabelDesigner() |
初始化 LabelDesigner 類別的新執行個體。 |
屬性
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 |
在視覺化設計工具中,為 Label 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) |