TemplatedControlDesigner Class
Extends design-time behavior for template-based server controls.
Assembly: System.Design (in System.Design.dll)
System.ComponentModel.Design.ComponentDesigner
System.Web.UI.Design.HtmlControlDesigner
System.Web.UI.Design.ControlDesigner
System.Web.UI.Design.TemplatedControlDesigner
System.Web.UI.Design.WebControls.BaseDataListDesigner
| Name | Description | |
|---|---|---|
![]() | TemplatedControlDesigner() | Initializes a new instance of the TemplatedControlDesigner class. |
| Name | Description | |
|---|---|---|
![]() | ActionLists | Gets the action list collection for the control designer.(Inherited from ControlDesigner.) |
![]() | ActiveTemplateEditingFrame | Obsolete. Gets the active template editing frame. |
![]() | AllowResize | Gets a value indicating whether the control can be resized in the design-time environment.(Inherited from ControlDesigner.) |
![]() | AssociatedComponents | Gets the collection of components associated with the component managed by the designer.(Inherited from ComponentDesigner.) |
![]() | AutoFormats | Gets the collection of predefined automatic formatting schemes to display in the Auto Format dialog box for the associated control at design time. (Inherited from ControlDesigner.) |
![]() | Behavior | Obsolete. Gets or sets the DHTML behavior that is associated with the designer.(Inherited from HtmlControlDesigner.) |
![]() | CanEnterTemplateMode | Gets a value indicating whether or not this designer will allow the viewing or editing of templates. |
![]() | Component | Gets the component this designer is designing.(Inherited from ComponentDesigner.) |
![]() | DataBindings | Gets the data bindings collection for the current control.(Inherited from HtmlControlDesigner.) |
![]() | DataBindingsEnabled | This API supports the product infrastructure and is not intended to be used directly from your code. Gets a value indicating whether the designer allows data binding. (Overrides ControlDesigner.DataBindingsEnabled.) |
![]() | DesignerState | Gets an object that is used to persist data for the associated control at design time.(Inherited from ControlDesigner.) |
![]() | DesignTimeElement | Obsolete. Gets the design-time object representing the control that is associated with the HtmlControlDesigner object on the design surface.(Inherited from HtmlControlDesigner.) |
![]() | DesignTimeElementView | Obsolete. Gets the view-control object for the control designer.(Inherited from ControlDesigner.) |
![]() | DesignTimeHtmlRequiresLoadComplete | Obsolete. Gets a value indicating whether the design host must finish loading before the GetDesignTimeHtml method can be called.(Inherited from ControlDesigner.) |
![]() | Expressions | Gets the expression bindings for the current control at design time.(Inherited from HtmlControlDesigner.) |
![]() | HidePropertiesInTemplateMode | This API supports the product infrastructure and is not intended to be used directly from your code. Gets a value indicating whether the properties of the associated control are hidden when the control is in template mode.(Inherited from ControlDesigner.) |
![]() | ID | Gets or sets the ID string for the control.(Inherited from ControlDesigner.) |
![]() | InheritanceAttribute | Gets an attribute that indicates the type of inheritance of the associated component.(Inherited from ComponentDesigner.) |
![]() | Inherited | Gets a value indicating whether this component is inherited.(Inherited from ComponentDesigner.) |
![]() | InTemplateMode | Obsolete. Gets a value indicating whether the designer document is in template mode. |
![]() | IsDirty | Obsolete. Gets or sets a value indicating whether the Web server control has been marked as changed.(Inherited from ControlDesigner.) |
![]() | ParentComponent | Gets the parent component for this designer.(Inherited from ComponentDesigner.) |
![]() | ReadOnly | Obsolete. Gets or sets a value indicating whether the properties of the control are read-only at design time.(Inherited from ControlDesigner.) |
![]() | RootDesigner | Gets the control designer for the Web Forms page that contains the associated control.(Inherited from ControlDesigner.) |
![]() | ShadowProperties | Gets a collection of property values that override user settings.(Inherited from ComponentDesigner.) |
![]() | ShouldCodeSerialize | Obsolete. Gets or sets a value indicating whether to create a field declaration for the control in the code-behind file for the current design document during serialization.(Inherited from HtmlControlDesigner.) |
![]() | Tag | Gets an object representing the HTML markup element for the associated control.(Inherited from ControlDesigner.) |
![]() | TemplateGroups | Gets a collection of template groups, each containing a template definition.(Overrides ControlDesigner.TemplateGroups.) |
![]() | UsePreviewControl | Gets a value indicating whether the control designer uses a temporary preview control to generate the design-time HTML markup.(Inherited from ControlDesigner.) |
![]() | Verbs | Gets the design-time verbs supported by the component that is associated with the designer.(Inherited from ComponentDesigner.) |
![]() | ViewControl | Gets or sets a Web server control that can be used for previewing the design-time HTML markup.(Inherited from ControlDesigner.) |
![]() | ViewControlCreated | Gets or sets a value indicating whether a View control has been created for display on the design surface.(Inherited from ControlDesigner.) |
![]() | Visible | Gets a value that indicates whether the control is visible at design time.(Inherited from ControlDesigner.) |
| Name | Description | |
|---|---|---|
![]() | CreateErrorDesignTimeHtml(String) | Creates HTML markup to display a specified error message at design time.(Inherited from ControlDesigner.) |
![]() | CreateErrorDesignTimeHtml(String, Exception) | Creates the HTML markup to display a specified exception error message at design time.(Inherited from ControlDesigner.) |
![]() | CreatePlaceHolderDesignTimeHtml() | Provides a simple rectangular placeholder representation that displays the type and ID of the control.(Inherited from ControlDesigner.) |
![]() | CreatePlaceHolderDesignTimeHtml(String) | Provides a simple rectangular placeholder representation that displays the type and ID of the control, and also additional specified instructions or information.(Inherited from ControlDesigner.) |
![]() | CreateTemplateEditingFrame(TemplateEditingVerb) | Obsolete. When overridden in a derived class, creates a template editing frame for the specified verb. |
![]() | CreateViewControl() | Returns a copy of the associated control for viewing or rendering on the design surface.(Inherited from ControlDesigner.) |
![]() | Dispose() | Releases all resources used by the ComponentDesigner.(Inherited from ComponentDesigner.) |
![]() | Dispose(Boolean) | Releases the unmanaged resources that are used by the HtmlControlDesigner object and optionally releases the managed resources.(Inherited from HtmlControlDesigner.) |
![]() | DoDefaultAction() | Creates a method signature in the source code file for the default event on the component and navigates the user's cursor to that location.(Inherited from ComponentDesigner.) |
![]() | EnterTemplateMode(ITemplateEditingFrame) | Obsolete. Opens a particular template frame object for editing in the designer. |
![]() | Equals(Object) | Determines whether the specified object is equal to the current object.(Inherited from Object.) |
![]() | ExitTemplateMode(Boolean, Boolean, Boolean) | Obsolete. Closes the currently active template editing frame after saving any relevant changes. |
![]() | Finalize() | Attempts to free resources by calling Dispose(false) before the object is reclaimed by garbage collection.(Inherited from ComponentDesigner.) |
![]() | GetBounds() | Retrieves the coordinates of the rectangle representing the boundaries for the control as displayed on the design surface.(Inherited from ControlDesigner.) |
![]() | GetCachedTemplateEditingVerbs() | Obsolete. Gets the cached template editing verbs. |
![]() | GetDesignTimeHtml() | Retrieves the HTML markup that is used to represent the control at design time.(Inherited from ControlDesigner.) |
![]() | GetDesignTimeHtml(DesignerRegionCollection) | Retrieves the HTML markup to display the control and populates the collection with the current control designer regions.(Inherited from ControlDesigner.) |
![]() | GetEditableDesignerRegionContent(EditableDesignerRegion) | Returns the content for an editable region of the design-time view of the associated control.(Inherited from ControlDesigner.) |
![]() | GetEmptyDesignTimeHtml() | Retrieves the HTML markup to represent a Web server control at design time that will have no visual representation at run time.(Inherited from ControlDesigner.) |
![]() | GetErrorDesignTimeHtml(Exception) | Retrieves the HTML markup that provides information about the specified exception. (Inherited from ControlDesigner.) |
![]() | GetHashCode() | Serves as the default hash function. (Inherited from Object.) |
![]() | GetPersistenceContent() | Retrieves the persistable inner HTML markup of the control at design time.(Inherited from ControlDesigner.) |
![]() | GetPersistInnerHtml() | Obsolete. Retrieves the persistable inner HTML markup of the control.(Inherited from ControlDesigner.) |
![]() | GetService(Type) | Attempts to retrieve the specified type of service from the design mode site of the designer's component.(Inherited from ComponentDesigner.) |
![]() | GetTemplateContainerDataItemProperty(String) | Obsolete. Gets the data item property of the template's container. |
![]() | GetTemplateContainerDataSource(String) | Obsolete. Gets the data source of the template's container. |
![]() | GetTemplateContent(ITemplateEditingFrame, String, Boolean) | Obsolete. When overridden in a derived class, gets the template's content. |
![]() | GetTemplateEditingVerbs() | Obsolete. Gets the template editing verbs available to the designer. |
![]() | GetTemplateFromText(String) | Creates a template from the specified text. |
![]() | GetTemplatePropertyParentType(String) | Obsolete. Gets the type of the parent of the template property. |
![]() | GetTextFromTemplate(ITemplate) | Gets a string of text that represents the specified template. |
![]() | GetType() | |
![]() | GetViewRendering() | Retrieves an object that contains the design-time markup for the content and regions of the associated control.(Inherited from ControlDesigner.) |
![]() | Initialize(IComponent) | Initializes the designer and loads the specified component.(Overrides ControlDesigner.Initialize(IComponent).) |
![]() | InitializeExistingComponent(IDictionary) | Reinitializes an existing component.(Inherited from ComponentDesigner.) |
![]() | InitializeNewComponent(IDictionary) | Initializes a newly created component.(Inherited from ComponentDesigner.) |
![]() | InitializeNonDefault() | Obsolete. Initializes the settings for an imported component that is already initialized to settings other than the defaults.(Inherited from ComponentDesigner.) |
![]() | Invalidate() | Invalidates the whole area of the control that is displayed on the design surface and signals the control designer to redraw the control.(Inherited from ControlDesigner.) |
![]() | Invalidate(Rectangle) | Invalidates the specified area of the control that is displayed on the design surface and signals the control designer to redraw the control.(Inherited from ControlDesigner.) |
![]() | InvokeGetInheritanceAttribute(ComponentDesigner) | Gets the InheritanceAttribute of the specified ComponentDesigner.(Inherited from ComponentDesigner.) |
![]() | IsPropertyBound(String) | Obsolete. Retrieves a value indicating whether the specified property on the associated control is data-bound.(Inherited from ControlDesigner.) |
![]() | Localize(IDesignTimeResourceWriter) | Uses the provided resource writer to persist the localizable properties of the associated control to a resource in the design host.(Inherited from ControlDesigner.) |
![]() | MemberwiseClone() | |
![]() | OnAutoFormatApplied(DesignerAutoFormat) | Called when a predefined, automatic formatting scheme has been applied to the associated control.(Inherited from ControlDesigner.) |
![]() | OnBehaviorAttached() | Obsolete. Provides an opportunity to perform additional processing when a behavior is attached to the designer.(Overrides HtmlControlDesigner.OnBehaviorAttached().) |
![]() | OnBehaviorDetaching() | Obsolete. Called when a behavior disassociates from the element.(Inherited from HtmlControlDesigner.) |
![]() | OnBindingsCollectionChanged(String) | Obsolete. Called when the data-binding collection changes.(Inherited from ControlDesigner.) |
![]() | OnClick(DesignerRegionMouseEventArgs) | Called by the design host when the user clicks the associated control at design time.(Inherited from ControlDesigner.) |
![]() | OnComponentChanged(Object, ComponentChangedEventArgs) | Delegate to handle the component changed event.(Overrides ControlDesigner.OnComponentChanged(Object, ComponentChangedEventArgs).) |
![]() | OnComponentChanging(Object, ComponentChangingEventArgs) | Represents the method that will handle the ComponentChanging event for the associated control. (Inherited from ControlDesigner.) |
![]() | OnControlResize() | Obsolete. Called when the associated Web server control has been resized in the design host at design time.(Inherited from ControlDesigner.) |
![]() | OnPaint(PaintEventArgs) | Called when the control designer draws the associated control on the design surface, if the CustomPaint value is true.(Inherited from ControlDesigner.) |
![]() | OnSetComponentDefaults() | Obsolete. Sets the default properties for the component.(Inherited from ComponentDesigner.) |
![]() | OnSetParent() | Provides an opportunity to perform additional processing when the parent of this designer is changed.(Overrides HtmlControlDesigner.OnSetParent().) |
![]() | OnTemplateModeChanged() | Provides an opportunity to perform additional processing when the template mode is changed. |
![]() | PostFilterAttributes(IDictionary) | Allows a designer to change or remove items from the set of attributes that it exposes through a TypeDescriptor.(Inherited from ComponentDesigner.) |
![]() | PostFilterEvents(IDictionary) | Allows a designer to change or remove items from the set of events that it exposes through a TypeDescriptor.(Inherited from ComponentDesigner.) |
![]() | PostFilterProperties(IDictionary) | Allows a designer to change or remove items from the set of properties that it exposes through a TypeDescriptor.(Inherited from ComponentDesigner.) |
![]() | PreFilterAttributes(IDictionary) | Allows a designer to add to the set of attributes that it exposes through a TypeDescriptor.(Inherited from ComponentDesigner.) |
![]() | PreFilterEvents(IDictionary) | Sets the list of events that are exposed at design-time for the TypeDescriptor object for the component.(Inherited from HtmlControlDesigner.) |
![]() | PreFilterProperties(IDictionary) | Adds properties to or removes properties from the Properties grid in a design host at design time or provides new design-time properties that might correspond to properties on the associated control.(Inherited from ControlDesigner.) |
![]() | RaiseComponentChanged(MemberDescriptor, Object, Object) | Notifies the IComponentChangeService that this component has been changed.(Inherited from ComponentDesigner.) |
![]() | RaiseComponentChanging(MemberDescriptor) | Notifies the IComponentChangeService that this component is about to be changed.(Inherited from ComponentDesigner.) |
![]() | RaiseResizeEvent() | Obsolete. Raises the OnControlResize event.(Inherited from ControlDesigner.) |
![]() | RegisterClone(Object, Object) | Registers internal data in a cloned control.(Inherited from ControlDesigner.) |
![]() | SaveActiveTemplateEditingFrame() | Saves the active template editing frame. |
![]() | SetEditableDesignerRegionContent(EditableDesignerRegion, String) | Specifies the content for an editable region of the control at design time. (Inherited from ControlDesigner.) |
![]() | SetRegionContent(EditableDesignerRegion, String) | Specifies the content for an editable region in the design-time view of the control.(Inherited from ControlDesigner.) |
![]() | SetTemplateContent(ITemplateEditingFrame, String, String) | Obsolete. When overridden in a derived class, sets the specified template's content to the specified content. |
![]() | SetViewFlags(ViewFlags, Boolean) | Assigns the specified bitwise ViewFlags enumeration to the specified flag value.(Inherited from ControlDesigner.) |
![]() | ToString() | Returns a string that represents the current object.(Inherited from Object.) |
![]() | UpdateDesignTimeHtml() | Updates the design-time HTML.(Overrides ControlDesigner.UpdateDesignTimeHtml().) |
Notes to Inheritors:
Although this class is not obsolete, it is unnecessary because template-editing features have been built into ControlDesigner.
The following code example demonstrates how to create a control designer class that uses templates and derives from the ControlDesigner class.
To run the example, compile the code, and then in a design host such as Visual Studio 2005, view the page in Design view. Select the control, click the action list to select a template to modify, and then use the drag-and-drop feature to move controls into the template.
Note |
|---|
Your project must have a reference to the System.Design assembly. |
using System; using System.ComponentModel; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.Design; namespace ASPNet.Design.Samples { // Set an attribute reference to the designer, and define // the HTML markup that the toolbox will write into the source. [Designer(typeof(TemplateGroupsSampleDesigner)), ToolboxData("<{0}:TemplateGroupsSample runat=server></{0}:TemplateGroupsSample>")] public sealed class TemplateGroupsSample : WebControl, INamingContainer { // Field for the templates private ITemplate[] _templates; // Constructor public TemplateGroupsSample() { _templates = new ITemplate[4]; } // For each template property, set the designer attributes // so the property does not appear in the property grid, but // changes to the template are persisted in the control. [Browsable(false), PersistenceMode(PersistenceMode.InnerProperty)] public ITemplate Template1 { get { return _templates[0]; } set { _templates[0] = value; } } [Browsable(false), PersistenceMode(PersistenceMode.InnerProperty)] public ITemplate Template2 { get { return _templates[1]; } set { _templates[1] = value; } } [Browsable(false), PersistenceMode(PersistenceMode.InnerProperty)] public ITemplate Template3 { get { return _templates[2]; } set { _templates[2] = value; } } [Browsable(false), PersistenceMode(PersistenceMode.InnerProperty)] public ITemplate Template4 { get { return _templates[3]; } set { _templates[3] = value; } } protected override void CreateChildControls() { // Instantiate each template inside a panel // then add the panel to the Controls collection for (int i = 0; i < 4; i++) { Panel pan = new Panel(); _templates[i].InstantiateIn(pan); this.Controls.Add(pan); } } } // Designer for the TemplateGroupsSample control public class TemplateGroupsSampleDesigner : ControlDesigner { TemplateGroupCollection col = null; public override void Initialize(IComponent component) { // Initialize the base base.Initialize(component); // Turn on template editing SetViewFlags(ViewFlags.TemplateEditing, true); } // Add instructions to the placeholder view of the control public override string GetDesignTimeHtml() { return CreatePlaceHolderDesignTimeHtml("Click here and use " + "the task menu to edit the templates."); } public override TemplateGroupCollection TemplateGroups { get { if (col == null) { // Get the base collection col = base.TemplateGroups; // Create variables TemplateGroup tempGroup; TemplateDefinition tempDef; TemplateGroupsSample ctl; // Get reference to the component as TemplateGroupsSample ctl = (TemplateGroupsSample)Component; // Create a TemplateGroup tempGroup = new TemplateGroup("Template Set A"); // Create a TemplateDefinition tempDef = new TemplateDefinition(this, "Template A1", ctl, "Template1", true); // Add the TemplateDefinition to the TemplateGroup tempGroup.AddTemplateDefinition(tempDef); // Create another TemplateDefinition tempDef = new TemplateDefinition(this, "Template A2", ctl, "Template2", true); // Add the TemplateDefinition to the TemplateGroup tempGroup.AddTemplateDefinition(tempDef); // Add the TemplateGroup to the TemplateGroupCollection col.Add(tempGroup); // Create another TemplateGroup and populate it tempGroup = new TemplateGroup("Template Set B"); tempDef = new TemplateDefinition(this, "Template B1", ctl, "Template3", true); tempGroup.AddTemplateDefinition(tempDef); tempDef = new TemplateDefinition(this, "Template B2", ctl, "Template4", true); tempGroup.AddTemplateDefinition(tempDef); // Add the TemplateGroup to the TemplateGroupCollection col.Add(tempGroup); } return col; } } // Do not allow direct resizing unless in TemplateMode public override bool AllowResize { get { if (this.InTemplateMode) return true; else return false; } } } }
<%@ Page Language="VB" %> <%@ Register TagPrefix="aspSample" Namespace="ASPNet.Design.Samples" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>Untitled Page</title> </head> <body> <form id="form1" runat="server"> <div> <aspSample:TemplateGroupsSample runat="server" ID="TGSample1"> </aspSample:TemplateGroupsSample> </div> </form> </body> </html>
Available since 1.1
Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
.jpeg?cs-save-lang=1&cs-lang=csharp)
.jpeg?cs-save-lang=1&cs-lang=csharp)
.jpeg?cs-save-lang=1&cs-lang=csharp)
.jpeg?cs-save-lang=1&cs-lang=csharp)
.jpeg?cs-save-lang=1&cs-lang=csharp)
.jpeg?cs-save-lang=1&cs-lang=csharp)
.jpeg?cs-save-lang=1&cs-lang=csharp)
.jpeg?cs-save-lang=1&cs-lang=csharp)