DataSourceDesigner 类

定义

DataSourceControl 类的设计宿主中提供设计时支持。Provides design-time support in a design host for the DataSourceControl class.

public ref class DataSourceDesigner : System::Web::UI::Design::ControlDesigner, System::Web::UI::Design::IDataSourceDesigner
public class DataSourceDesigner : System.Web.UI.Design.ControlDesigner, System.Web.UI.Design.IDataSourceDesigner
type DataSourceDesigner = class
    inherit ControlDesigner
    interface IDataSourceDesigner
Public Class DataSourceDesigner
Inherits ControlDesigner
Implements IDataSourceDesigner
继承
派生
实现

示例

下面的代码示例演示如何将自定义数据源控件与多个其他小型自定义类结合使用, 如下表所示。The following code example shows how to use a custom data source control with several other small custom classes, as listed in the following table.

自定义类Custom class 派生自Derived from
CustomDataSource ObjectDataSource
CustomDataSourceDesigner DataSourceDesigner
CustomDataSourceView ObjectDataSourceView
CustomDesignDataSourceView DesignerDataSourceView
BookListViewSchema IDataSourceViewSchema
CustomIDFieldSchema IDataSourceFieldSchema
CustomTitleFieldSchema IDataSourceFieldSchema
BookItem(两个字段的数据结构。)BookItem (A two-field data structure.)

编译代码示例后, 在设计视图中打开 .aspx 页面, 然后将DataSourceID属性设置为自定义数据源控件的 ID。After compiling the code example, open the .aspx page in Design view and then set the DataSourceID property to the ID of the custom data source control.

using System;
using System.Data;
using System.Security.Permissions;
using System.Collections;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.Design;
using System.Web.UI.Design.WebControls;
using System.ComponentModel;
using System.ComponentModel.Design;

namespace ASPNet.Design.Samples_CS
{
    [Designer(typeof(CustomDataSourceDesigner)),
        ToolboxData("<{0}:CustomDataSource runat=\"server\"></{0}:CustomDataSource>")]
    public class CustomDataSource : ObjectDataSource
    {
        private ObjectDataSourceView _view = null;
        private string _defaultViewName = "BookList";

        public CustomDataSource() : base() { }

        // Gets a view by name
        protected override DataSourceView GetView(string viewName)
        {
            // This data source only allows one view
            if (viewName != _defaultViewName)
            {
                return null;
            }
            else if (_view == null)
            {
                _view = new CustomDataSourceView(this, 
                    _defaultViewName, HttpContext.Current);
            }

            return _view;
        }

        // Gets a list of view names for this class
        protected override ICollection GetViewNames()
        {
            ArrayList ar = new ArrayList(1);
            ar.Add(_defaultViewName);
            return ar as ICollection;
        }
    }

    // The runtime data source view
    public class CustomDataSourceView : ObjectDataSourceView
    {
        private ArrayList _data = null;

        public CustomDataSourceView(CustomDataSource owner, 
            string viewName, HttpContext context)
            : base(owner, viewName, context)
        {
            owner.SelectCountMethod = "GetCount";
        }

        // This method would typically get a set of live data  
        // rather than create some dummy data
        protected override IEnumerable ExecuteSelect(
            DataSourceSelectArguments arguments)
        {
            if (_data == null)
            {
                // Create a set of runtime fake data
                _data = new ArrayList();
                _data.Add(new BookItem("ID_1", "Runtime Title 01"));
                _data.Add(new BookItem("ID_2", "Runtime Title 02"));
                _data.Add(new BookItem("ID_3", "Runtime Title 03"));
            }

            return _data as IEnumerable;
        }

        // Allow getting the record count
        public override bool CanRetrieveTotalRowCount
        {
            get { return true; }
        }

        // Returns the number of records in the current set of data
        public int GetCount()
        {
            if (_data == null)
                return 0;
            else
                return _data.Count;
        }
        
        // Do not allow deletions
        public override bool CanDelete
        {
            get { return false; }
        }
        // Do not allow insertions
        public override bool CanInsert
        {
            get { return false; }
        }
        // Do not allow paging
        public override bool CanPage
        {
            get { return false; }
        }
        // Do not allow sorting
        public override bool CanSort
        {
            get { return false; }
        }
        // Do not allow updating
        public override bool CanUpdate
        {
            get { return false; }
        }
    }

    // A class to define each record of the data
    public class BookItem
    {
        private string _id;
        private string _title;

        public BookItem(string id, string title)
        {
            _id = id;
            _title = title;
        }

        public string ID
        {
            get { return _id; }
        }
        public string Title
        {
            get { return _title; }
            set { _title = value; }
        }
    }

    // Custom designer for the CustomDataSource control.
    public class CustomDataSourceDesigner : DataSourceDesigner
    {
        private CustomDataSource _control;
        private string _defaultViewName = "BookList";
        private CustomDesignDataSourceView _view = null;

        // Initialize the designer
        public override void Initialize(IComponent component)
        {
            base.Initialize(component);
            _control = (CustomDataSource)Component;
        }

        // Get a view
        public override DesignerDataSourceView GetView(string viewName)
        {
            if (!viewName.Equals(_defaultViewName))
                return null;

            _view ??= new CustomDesignDataSourceView(this,
                _defaultViewName);

            return _view;
        }

        // Get a list of view names
        public override string[] GetViewNames()
        {
            return new string[] { "BookList" };
        }

        // Do not allow refreshing the schema
        public override bool CanRefreshSchema
        {
            get { return false; }
        }
        // Do not allow resizing
        public override bool AllowResize
        {
            get { return false; }
        }
    }

    // A design-time data source view
    public class CustomDesignDataSourceView : DesignerDataSourceView
    {
        private ArrayList _data = null;

        public CustomDesignDataSourceView(
            CustomDataSourceDesigner owner, string viewName)
            : base(owner, viewName)
        {}

        // Get data for design-time display
        public override IEnumerable GetDesignTimeData(
            int minimumRows, out bool isSampleData)
        {
            if (_data == null)
            {
                // Create a set of design-time fake data
                _data = new ArrayList();
                for (int i = 1; i <= minimumRows; i++)
                {
                    _data.Add(new BookItem("ID_" + i.ToString(),
                        "Design-Time Title 0" + i.ToString()));
                }
            }
            isSampleData = true;
            return _data as IEnumerable;
        }

        public override IDataSourceViewSchema Schema
        {
            get { return new BookListViewSchema(); }
        }

        // Allow getting the record count
        public override bool CanRetrieveTotalRowCount
        {
            get { return true; }
        }
        // Do not allow deletions
        public override bool CanDelete
        {
            get { return false; }
        }
        // Do not allow insertions
        public override bool CanInsert
        {
            get { return false; }
        }
        // Do not allow updates
        public override bool CanUpdate
        {
            get { return false; }
        }
        // Do not allow paging
        public override bool CanPage
        {
            get { return false; }
        }
        // Do not allow sorting
        public override bool CanSort
        {
            get { return false; }
        }
    }

    // A custom View Schema class
    public class BookListViewSchema : IDataSourceViewSchema
    {
        public BookListViewSchema()
        { }

        // The name of this View Schema
        public string Name
        {
            get { return "BookList"; }
        }

        // Build a Field Schema array
        public IDataSourceFieldSchema[] GetFields()
        {
            IDataSourceFieldSchema[] fields = new IDataSourceFieldSchema[2];
            fields[0] = new CustomIDFieldSchema();
            fields[1] = new CustomTitleFieldSchema();
            return fields;
        }
        // There are no child views, so return null
        public IDataSourceViewSchema[] GetChildren()
        {
            return null;
        }
    }

    // A custom Field Schema class for ID
    public class CustomIDFieldSchema : IDataSourceFieldSchema
    {
        public CustomIDFieldSchema()
        { }

        // Name is ID
        public string Name
        {
            get { return "ID"; }
        }
        // Data type is string
        public Type DataType
        {
            get { return typeof(string); }
        }
        // This is not an Identity field
        public bool Identity
        {
            get { return false; }
        }
        // This field is read only
        public bool IsReadOnly
        {
            get { return true; }
        }
        // This field is unique
        public bool IsUnique
        {
            get { return true; }
        }
        // This field can't be longer than 20
        public int Length
        {
            get { return 20; }
        }
        // This field can't be null
        public bool Nullable
        {
            get { return false; }
        }
        // This is a Primary Key
        public bool PrimaryKey
        {
            get { return true; }
        }

        // These properties do not apply
        public int Precision
        {
            get { return -1; }
        }
        public int Scale
        {
            get { return -1; }
        }
    }
    
    // A custom Field Schema class for Title
    public class CustomTitleFieldSchema : IDataSourceFieldSchema
    {
        public CustomTitleFieldSchema()
        { }

        // Name is Title
        public string Name
        {
            get { return "Title"; }
        }
        // Type is string
        public Type DataType
        {
            get { return typeof(string); }
        }
        // This is not an Identity field
        public bool Identity
        {
            get { return false; }
        }
        // This field is not read only
        public bool IsReadOnly
        {
            get { return false; }
        }
        // This field is not unique
        public bool IsUnique
        {
            get { return false; }
        }
        // This field can't be longer than 100
        public int Length
        {
            get { return 100; }
        }
        // This field can't be null
        public bool Nullable
        {
            get { return false; }
        }
        // This is not the Primary Key
        public bool PrimaryKey
        {
            get { return false; }
        }

        // These properties do not apply
        public int Precision
        {
            get { return -1; }
        }
        public int Scale
        {
            get { return -1; }
        }
    }
}
Imports System.Data
Imports System.Security.Permissions
Imports System.Collections
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Web.UI.Design
Imports System.Web.UI.Design.WebControls
Imports System.ComponentModel
Imports System.ComponentModel.Design

Namespace ASPNet.Design.Samples_VB
    <Designer(GetType(CustomDataSourceDesigner)), _
        ToolboxData("<{0}:CustomDataSource runat=""server""></{0}:CustomDataSource>")> _
    Public Class CustomDataSource
        Inherits ObjectDataSource

        Dim _defaultViewName As String = "BookList"
        Dim _view As ObjectDataSourceView = Nothing

        Public Sub New()
            MyBase.New()
        End Sub

        ' Gets a view by name
        Protected Overrides Function GetView(ByVal viewName As String) As DataSourceView
            ' This data source only allows one view
            If Not (viewName.Equals(_defaultViewName)) Then
                Return Nothing
            ElseIf IsNothing(_view) Then
                _view = New CustomDataSourceView(Me, _
                    _defaultViewName, HttpContext.Current)
            End If

            Return _view
        End Function

        ' Gets a list of view names for this class
        Protected Overrides Function GetViewNames() As ICollection
            Dim ar As New ArrayList()
            ar.Add(_defaultViewName)
            Return CType(ar, ICollection)
        End Function

    End Class

    ' The runtime data source view
    Public Class CustomDataSourceView
        Inherits ObjectDataSourceView

        Dim _data As ArrayList = Nothing

        Public Sub New(ByVal owner As CustomDataSource, ByVal viewName As String, ByVal context As HttpContext)
            MyBase.New(owner, viewName, context)
            owner.SelectCountMethod = "GetCount"
        End Sub

        ' This method would typically get a set of live data
        ' rather than create some dummy data
        Protected Overrides Function ExecuteSelect(ByVal arguments As DataSourceSelectArguments) As System.Collections.IEnumerable
            If (IsNothing(_data)) Then
                _data = New ArrayList()
                _data.Add(New BookItem("ID_1", "Runtime Title 01"))
                _data.Add(New BookItem("ID_2", "Runtime Title 02"))
                _data.Add(New BookItem("ID_3", "Runtime Title 03"))
            End If
            Return CType(_data, IEnumerable)
        End Function

        ' Allow getting the record count
        Public Overrides ReadOnly Property CanRetrieveTotalRowCount() As Boolean
            Get
                Return True
            End Get
        End Property

        ' Returns the number of records in the current set of data
        Public ReadOnly Property GetCount() As Integer
            Get
                If IsNothing(_data) Then
                    Return 0
                Else
                    Return _data.Count
                End If
            End Get
        End Property
        ' Do not allow deletions
        Public Overrides ReadOnly Property CanDelete() As Boolean
            Get
                Return False
            End Get
        End Property
        ' Do not allow insertions
        Public Overrides ReadOnly Property CanInsert() As Boolean
            Get
                Return False
            End Get
        End Property
        ' Do not allow paging
        Public Overrides ReadOnly Property CanPage() As Boolean
            Get
                Return False
            End Get
        End Property
        ' Do not allow sorting
        Public Overrides ReadOnly Property CanSort() As Boolean
            Get
                Return False
            End Get
        End Property
        ' Do not allow updating
        Public Overrides ReadOnly Property CanUpdate() As Boolean
            Get
                Return False
            End Get
        End Property

    End Class

    ' A class to define a record of the data
    Public Class BookItem
        Private _id As String
        Private _title As String

        Public Sub New(ByVal id As String, ByVal title As String)
            _id = id
            _title = title
        End Sub

        Public ReadOnly Property ID() As String
            Get
                Return _id
            End Get
        End Property

        Public Property Title() As String
            Get
                Return _title
            End Get
            Set(ByVal value As String)
                _title = value
            End Set
        End Property
    End Class

    ' Custom designer for the CustomDataSource control.
    Public Class CustomDataSourceDesigner
        Inherits DataSourceDesigner

        Private _control As CustomDataSource = Nothing
        Private _defaultViewName As String = "BookList"
        Private _view As CustomDesignDataSourceView = Nothing

        Public Overrides Sub Initialize(ByVal cmponent As IComponent)
            MyBase.Initialize(cmponent)
            _control = CType(cmponent, CustomDataSource)
        End Sub

        ' Get a view
        Public Overrides Function GetView(ByVal viewName As String) As DesignerDataSourceView
            If Not (viewName.Equals(_defaultViewName)) Then
                Return Nothing
            ElseIf IsNothing(_view) Then
                _view = New CustomDesignDataSourceView(Me, _
                    _defaultViewName)
            End If

            Return _view
        End Function

        ' Get a list of view names
        Public Overrides Function GetViewNames() As String()
            Return New String() {"BookList"}
        End Function

        ' Don't allow refreshing the schema
        Public Overrides ReadOnly Property CanRefreshSchema() As Boolean
            Get
                Return False
            End Get
        End Property
        ' Do not allow resizing
        Public Overrides ReadOnly Property AllowResize() As Boolean
            Get
                Return False
            End Get
        End Property
    End Class

    ' A     design-time data source view
    Public Class CustomDesignDataSourceView
        Inherits DesignerDataSourceView

        Private _data As ArrayList = Nothing

        Public Sub New(ByVal owner As CustomDataSourceDesigner, ByVal viewName As String)
            MyBase.New(owner, viewName)
        End Sub

        ' Get data for design-time display
        Public Overrides Function GetDesignTimeData( _
            ByVal minimumRows As Integer, _
            ByRef isSampleData As Boolean) As IEnumerable

            If IsNothing(_data) Then
                ' Create a set of design-time fake data
                _data = New ArrayList()
                Dim i As Integer
                For i = 1 To minimumRows
                    _data.Add(New BookItem("ID_" & i.ToString(), _
                        "Design-Time Title 0" & i.ToString()))
                Next
            End If
            isSampleData = True
            Return CType(_data, IEnumerable)
        End Function

        Public Overrides ReadOnly Property Schema() As IDataSourceViewSchema
            Get
                Return New BookListViewSchema()
            End Get
        End Property

        ' Allow getting the record count
        Public Overrides ReadOnly Property CanRetrieveTotalRowCount() As Boolean
            Get
                Return True
            End Get
        End Property
        ' Do not allow deletions
        Public Overrides ReadOnly Property CanDelete() As Boolean
            Get
                Return False
            End Get
        End Property
        ' Do not allow insertions
        Public Overrides ReadOnly Property CanInsert() As Boolean
            Get
                Return False
            End Get
        End Property
        ' Do not allow updates
        Public Overrides ReadOnly Property CanUpdate() As Boolean
            Get
                Return False
            End Get
        End Property
        ' Do not allow paging
        Public Overrides ReadOnly Property CanPage() As Boolean
            Get
                Return False
            End Get
        End Property
        ' Do not allow sorting
        Public Overrides ReadOnly Property CanSort() As Boolean
            Get
                Return False
            End Get
        End Property
    End Class

    ' A custom View Schema class
    Public Class BookListViewSchema
        Implements IDataSourceViewSchema

        Public Sub New()
        End Sub

        ' The name of this View Schema
        Public ReadOnly Property Name() As String Implements IDataSourceViewSchema.Name
            Get
                Return "BookList"
            End Get
        End Property

        ' Build a Field Schema array
        Public Function GetFields() As IDataSourceFieldSchema() Implements IDataSourceViewSchema.GetFields
            Dim fields(1) As IDataSourceFieldSchema
            fields(0) = New CustomIDFieldSchema()
            fields(1) = New CustomTitleFieldSchema()
            Return fields
        End Function
        ' There are no child views, so return Nothing
        Public Function GetChildren() As IDataSourceViewSchema() Implements IDataSourceViewSchema.GetChildren
            Return Nothing
        End Function
    End Class

    ' A custom Field Schema class for ID
    Public Class CustomIDFieldSchema
        Implements IDataSourceFieldSchema

        Public Sub New()
        End Sub

        ' Name is ID
        Public ReadOnly Property Name() As String Implements IDataSourceFieldSchema.Name
            Get
                Return "ID"
            End Get
        End Property
        ' Data type is string
        Public ReadOnly Property DataType() As Type Implements IDataSourceFieldSchema.DataType
            Get
                Return GetType(String)
            End Get
        End Property
        ' This is not an Identity field
        Public ReadOnly Property Identity() As Boolean Implements IDataSourceFieldSchema.Identity
            Get
                Return False
            End Get
        End Property
        ' This field is read only
        Public ReadOnly Property IsReadOnly() As Boolean Implements IDataSourceFieldSchema.IsReadOnly
            Get
                Return True
            End Get
        End Property
        ' This field is unique
        Public ReadOnly Property IsUnique() As Boolean Implements IDataSourceFieldSchema.IsUnique
            Get
                Return True
            End Get
        End Property
        ' This field can't be longer than 20
        Public ReadOnly Property Length() As Integer Implements IDataSourceFieldSchema.Length
            Get
                Return 20
            End Get
        End Property
        ' This field can't be null
        Public ReadOnly Property Nullable() As Boolean Implements IDataSourceFieldSchema.Nullable
            Get
                Return False
            End Get
        End Property
        ' This is a Primary Key
        Public ReadOnly Property PrimaryKey() As Boolean Implements IDataSourceFieldSchema.PrimaryKey
            Get
                Return True
            End Get
        End Property

        ' These properties do not apply
        Public ReadOnly Property Precision() As Integer Implements IDataSourceFieldSchema.Precision
            Get
                Return -1
            End Get
        End Property
        Public ReadOnly Property Scale() As Integer Implements IDataSourceFieldSchema.Scale
            Get
                Return -1
            End Get
        End Property
    End Class

    ' A custom Field Schema class for Title
    Public Class CustomTitleFieldSchema
        Implements IDataSourceFieldSchema

        Public Sub New()
        End Sub

        ' Name is Title
        Public ReadOnly Property Name() As String Implements IDataSourceFieldSchema.Name
            Get
                Return "Title"
            End Get
        End Property
        ' Type is string
        Public ReadOnly Property DataType() As Type Implements IDataSourceFieldSchema.DataType
            Get
                Return GetType(String)
            End Get
        End Property
        ' This is not an Identity field
        Public ReadOnly Property Identity() As Boolean Implements IDataSourceFieldSchema.Identity
            Get
                Return False
            End Get
        End Property
        ' This field is not read only
        Public ReadOnly Property IsReadOnly() As Boolean Implements IDataSourceFieldSchema.IsReadOnly
            Get
                Return False
            End Get
        End Property
        ' This field is not unique
        Public ReadOnly Property IsUnique() As Boolean Implements IDataSourceFieldSchema.IsUnique
            Get
                Return False
            End Get
        End Property
        ' This field can't be longer than 100
        Public ReadOnly Property Length() As Integer Implements IDataSourceFieldSchema.Length
            Get
                Return 100
            End Get
        End Property
        ' This field can't be null
        Public ReadOnly Property Nullable() As Boolean Implements IDataSourceFieldSchema.Nullable
            Get
                Return False
            End Get
        End Property
        ' This is not the Primary Key
        Public ReadOnly Property PrimaryKey() As Boolean Implements IDataSourceFieldSchema.PrimaryKey
            Get
                Return False
            End Get
        End Property

        ' These properties do not apply
        Public ReadOnly Property Precision() As Integer Implements IDataSourceFieldSchema.Precision
            Get
                Return -1
            End Get
        End Property
        Public ReadOnly Property Scale() As Integer Implements IDataSourceFieldSchema.Scale
            Get
                Return -1
            End Get
        End Property
    End Class

End Namespace
<%@ Page Language="C#" %>
<%@ Register TagPrefix="aspSample" Namespace="ASPNet.Design.Samples_CS" %>

<!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:CustomDataSource ID="CustomDS1" 
        runat="server"></aspSample:CustomDataSource>
    <asp:GridView ID="GridView1" runat="server"></asp:GridView>
    
    </div>
    </form>
</body>
</html>
<%@ Page Language="VB" %>
<%@ Register TagPrefix="aspSample" 
    Namespace="ASPNet.Design.Samples_VB" %>

<!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:CustomDataSource runat="server" 
        ID="CustomDS1"></aspSample:CustomDataSource>
    <asp:GridView ID="GridView1" runat="server"></asp:GridView>
    
    </div>
    </form>
</body>
</html>

注解

类是数据源设计器的基类, 如SqlDataSourceDesignerAccessDataSourceDesignerObjectDataSourceDesigner类。 DataSourceDesignerThe DataSourceDesigner class is the base class for data source designers, such as the SqlDataSourceDesigner, AccessDataSourceDesigner, and ObjectDataSourceDesigner classes. 如果创建新的数据源控件, 则可能还需要为控件创建自定义控件设计器, 并从DataSourceDesigner类中派生该控件设计器。If you create a new data source control, you might also want to create a custom control designer for your control and derive it from the DataSourceDesigner class.

类具有两个事件方法OnDataSourceChanged : 和OnSchemaRefreshed方法。 DataSourceDesignerThe DataSourceDesigner class has two event methods: the OnDataSourceChanged and OnSchemaRefreshed methods. 这两个事件都可以通过SuppressDataSourceEvents方法暂时禁用, 这会SuppressingDataSourceEvents设置属性。Both of these events can be temporarily disabled with the SuppressDataSourceEvents method, which sets the SuppressingDataSourceEvents property. 可以通过ResumeDataSourceEvents方法再次启用事件方法。The event methods can be enabled again with the ResumeDataSourceEvents method.

可以使用两种静态方法来计算架构或视图的等效性, 而无需创建类的实例:There are two static methods that you can use to evaluate the equivalency of schemas or views without creating an instance of the class:

继承者说明

若要在设计时为派生类中的 "操作列表" 菜单提供命令, 您必须ActionLists重写属性以返回DesignerActionListCollection自定义对象, DesignerActionList该对象具有派生自对象的自定义项。To provide commands for the action list menu at design time in a derived class, you must override the ActionLists property to return a custom DesignerActionListCollection object with custom items that are derived from the DesignerActionList object.

构造函数

DataSourceDesigner()

初始化 DataSourceDesigner 类的新实例。Initializes a new instance of the DataSourceDesigner class.

属性

ActionLists

获取项的列表,其中的项用来在设计时创建操作列表菜单。Gets a list of items that are used to create an action list menu at design time.

AllowResize

获取一个值,该值指示是否可以在设计时环境中调整控件的大小。Gets a value indicating whether the control can be resized in the design-time environment.

(继承自 ControlDesigner)
AssociatedComponents

获取与设计器所管理的组件关联的组件集合。Gets the collection of components associated with the component managed by the designer.

(继承自 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.

(继承自 ControlDesigner)
Behavior

获取或设置与设计器关联的 DHTML 行为。Gets or sets the DHTML behavior that is associated with the designer.

(继承自 HtmlControlDesigner)
CanConfigure

获取一个值,该值指示是否可以调用 Configure() 方法。Gets a value indicating whether the Configure() method can be called.

CanRefreshSchema

获取一个值,该值指示是否可以调用 RefreshSchema(Boolean) 方法。Gets a value indicating whether the RefreshSchema(Boolean) method can be called.

Component

获取此设计器正在设计的组件。Gets the component this designer is designing.

(继承自 ComponentDesigner)
DataBindings

获取当前控件的数据绑定集合。Gets the data bindings collection for the current control.

(继承自 HtmlControlDesigner)
DataBindingsEnabled

获取一个值,该值指示包含关联控件的区域是否支持数据绑定。Gets a value indicating whether data binding is supported by the containing region for the associated control.

(继承自 ControlDesigner)
DesignerState

获取用于在设计时保持关联控件数据的对象。Gets an object that is used to persist data for the associated control at design time.

(继承自 ControlDesigner)
DesignTimeElement

获取一个设计时对象,该对象表示与设计图面上的 HtmlControlDesigner 对象关联的控件。Gets the design-time object representing the control that is associated with the HtmlControlDesigner object on the design surface.

(继承自 HtmlControlDesigner)
DesignTimeElementView

获取控件设计器的视图控件对象。Gets the view-control object for the control designer.

(继承自 ControlDesigner)
DesignTimeHtmlRequiresLoadComplete

获取一个值,该值指示是否必须在设计宿主完成加载之后才能调用 GetDesignTimeHtml 方法。Gets a value indicating whether the design host must finish loading before the GetDesignTimeHtml method can be called.

(继承自 ControlDesigner)
Expressions

获取当前控件在设计时的表达式绑定。Gets the expression bindings for the current control at design time.

(继承自 HtmlControlDesigner)
HidePropertiesInTemplateMode

获取一个值,该值指示当控件处于模板模式时,关联控件的属性是否被隐藏。Gets a value indicating whether the properties of the associated control are hidden when the control is in template mode.

(继承自 ControlDesigner)
ID

获取或设置控件的 ID 字符串。Gets or sets the ID string for the control.

(继承自 ControlDesigner)
InheritanceAttribute

获取一个特性,该特性指示关联组件的继承类型。Gets an attribute that indicates the type of inheritance of the associated component.

(继承自 ComponentDesigner)
Inherited

获取一个值,该值指示是否继承此组件。Gets a value indicating whether this component is inherited.

(继承自 ComponentDesigner)
InTemplateMode

获取一个值,该值指示控件在设计宿主中是否处于模板查看模式或模板编辑模式之一。Gets a value indicating whether the control is in either template viewing or editing mode in the design host. InTemplateMode 属性为只读。The InTemplateMode property is read-only.

(继承自 ControlDesigner)
IsDirty

获取或设置一个值,该值指示 Web 服务器控件是否已被标记为已更改。Gets or sets a value indicating whether the Web server control has been marked as changed.

(继承自 ControlDesigner)
ParentComponent

获取此设计器的父组件。Gets the parent component for this designer.

(继承自 ComponentDesigner)
ReadOnly

获取或设置一个值,该值指示控件的属性在设计时是否为只读。Gets or sets a value indicating whether the properties of the control are read-only at design time.

(继承自 ControlDesigner)
RootDesigner

获取包含关联控件的 Web 窗体页的控件设计器。Gets the control designer for the Web Forms page that contains the associated control.

(继承自 ControlDesigner)
ShadowProperties

获取重写用户设置的属性值的集合。Gets a collection of property values that override user settings.

(继承自 ComponentDesigner)
ShouldCodeSerialize

获取或设置一个值,该值指示在序列化期间是否应为当前设计文档在代码隐藏文件中创建控件的字段声明。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.

(继承自 HtmlControlDesigner)
SuppressingDataSourceEvents

获取一个值,该值指示是否发生 DataSourceChanged 事件或 RefreshSchema(Boolean) 方法。Gets a value indicating whether the DataSourceChanged event or the RefreshSchema(Boolean) method occurs.

Tag

获取表示关联控件的 HTML 标记元素的对象。Gets an object representing the HTML markup element for the associated control.

(继承自 ControlDesigner)
TemplateGroups

获取一个模板组集合,其中每个模板组包含一个或多个模板定义。Gets a collection of template groups, each containing one or more template definitions.

(继承自 ControlDesigner)
UsePreviewControl

获取一个值,该值指示控件设计器是否使用临时预览控件来生成设计时 HTML 标记。Gets a value indicating whether the control designer uses a temporary preview control to generate the design-time HTML markup.

(继承自 ControlDesigner)
Verbs

获取与设计器相关联的组件所支持的设计时谓词。Gets the design-time verbs supported by the component that is associated with the designer.

(继承自 ComponentDesigner)
ViewControl

获取或设置可用于预览设计时 HTML 标记的 Web 服务器控件。Gets or sets a Web server control that can be used for previewing the design-time HTML markup.

(继承自 ControlDesigner)
ViewControlCreated

获取或设置一个值,该值指示是否已创建 View 控件以在设计图面上显示。Gets or sets a value indicating whether a View control has been created for display on the design surface.

(继承自 ControlDesigner)
Visible

获取指示该控件在设计时是否可见的值。Gets a value that indicates whether the control is visible at design time.

(继承自 ControlDesigner)

方法

Configure()

启动设计宿主中的数据源配置实用工具。Launches the data source configuration utility in the design host.

CreateErrorDesignTimeHtml(String)

创建在设计时显示指定错误消息的 HTML 标记。Creates HTML markup to display a specified error message at design time.

(继承自 ControlDesigner)
CreateErrorDesignTimeHtml(String, Exception)

创建在设计时显示指定异常错误消息的 HTML 标记。Creates the HTML markup to display a specified exception error message at design time.

(继承自 ControlDesigner)
CreatePlaceHolderDesignTimeHtml()

提供一个简单的矩形占位符表示形式,该表示形式显示该控件的类型和 ID。Provides a simple rectangular placeholder representation that displays the type and ID of the control.

(继承自 ControlDesigner)
CreatePlaceHolderDesignTimeHtml(String)

提供一个简单的矩形占位符表示形式,该表示形式显示该控件的类型和 ID 以及指定的附加说明或信息。Provides a simple rectangular placeholder representation that displays the type and ID of the control, and also additional specified instructions or information.

(继承自 ControlDesigner)
CreateViewControl()

返回要在设计图面上查看或呈现的关联控件的副本。Returns a copy of the associated control for viewing or rendering on the design surface.

(继承自 ControlDesigner)
Dispose()

释放 ComponentDesigner 使用的所有资源。Releases all resources used by the ComponentDesigner.

(继承自 ComponentDesigner)
Dispose(Boolean)

释放由 HtmlControlDesigner 对象占用的非托管资源,还可以选择释放托管资源。Releases the unmanaged resources that are used by the HtmlControlDesigner object and optionally releases the managed resources.

(继承自 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.

(继承自 ComponentDesigner)
Equals(Object)

确定指定对象是否等于当前对象。Determines whether the specified object is equal to the current object.

(继承自 Object)
GetBounds()

检索矩形的坐标,该矩形表示设计图面上显示的控件的边界。Retrieves the coordinates of the rectangle representing the boundaries for the control as displayed on the design surface.

(继承自 ControlDesigner)
GetDesignTimeHtml()

检索用于在设计时显示关联数据源控件的 HTML 标记。Retrieves the HTML markup for displaying the associated data source control at design time.

GetDesignTimeHtml(DesignerRegionCollection)

检索用当前控件设计器区域显示控件并填充集合的 HTML 标记。Retrieves the HTML markup to display the control and populates the collection with the current control designer regions.

(继承自 ControlDesigner)
GetEditableDesignerRegionContent(EditableDesignerRegion)

返回关联控件设计时视图中可编辑区域的内容。Returns the content for an editable region of the design-time view of the associated control.

(继承自 ControlDesigner)
GetEmptyDesignTimeHtml()

检索表示在设计时将不具有可视表示形式的运行时 Web 服务器控件的 HTML 标记。Retrieves the HTML markup to represent a Web server control at design time that will have no visual representation at run time.

(继承自 ControlDesigner)
GetErrorDesignTimeHtml(Exception)

检索 HTML 标记,该标记提供有关指定异常的信息。Retrieves the HTML markup that provides information about the specified exception.

(继承自 ControlDesigner)
GetHashCode()

用作默认哈希函数。Serves as the default hash function.

(继承自 Object)
GetPersistenceContent()

在设计时检索该控件的持久内部 HTML 标记。Retrieves the persistable inner HTML markup of the control at design time.

(继承自 ControlDesigner)
GetPersistInnerHtml()

检索控件的持久性内部 HTML 标记。Retrieves the persistable inner HTML markup of the control.

(继承自 ControlDesigner)
GetService(Type)

尝试从设计器组件的设计模式站点检索指定类型的服务。Attempts to retrieve the specified type of service from the design mode site of the designer's component.

(继承自 ComponentDesigner)
GetType()

获取当前实例的 TypeGets the Type of the current instance.

(继承自 Object)
GetView(String)

检索由视图名称标识的 DesignerDataSourceView 对象。Retrieves a DesignerDataSourceView object that is identified by the view name.

GetViewNames()

返回此数据源中可用的视图名称的数组。Returns an array of the view names that are available in this data source.

GetViewRendering()

检索一个对象,该对象包含关联控件的内容和区域的设计时标记。Retrieves an object that contains the design-time markup for the content and regions of the associated control.

(继承自 ControlDesigner)
Initialize(IComponent)

初始化控件设计器并加载指定的组件。Initializes the control designer and loads the specified component.

(继承自 ControlDesigner)
InitializeExistingComponent(IDictionary)

重新初始化现有组件。Reinitializes an existing component.

(继承自 ComponentDesigner)
InitializeNewComponent(IDictionary)

初始化新创建的组件。Initializes a newly created component.

(继承自 ComponentDesigner)
InitializeNonDefault()

对已初始化为非默认设置的导入组件的设置进行初始化。Initializes the settings for an imported component that is already initialized to settings other than the defaults.

(继承自 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.

(继承自 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.

(继承自 ControlDesigner)
InvokeGetInheritanceAttribute(ComponentDesigner)

获取指定 InheritanceAttributeComponentDesignerGets the InheritanceAttribute of the specified ComponentDesigner.

(继承自 ComponentDesigner)
IsPropertyBound(String)

检索一个值,该值指示关联控件上的指定属性是否是数据绑定的。Retrieves a value indicating whether the specified property on the associated control is data-bound.

(继承自 ControlDesigner)
Localize(IDesignTimeResourceWriter)

使用提供的资源编写器将关联控件的可本地化属性保持到设计宿主中的某个资源。Uses the provided resource writer to persist the localizable properties of the associated control to a resource in the design host.

(继承自 ControlDesigner)
MemberwiseClone()

创建当前 Object 的浅表副本。Creates a shallow copy of the current Object.

(继承自 Object)
OnAutoFormatApplied(DesignerAutoFormat)

对关联控件应用预定义的自动格式设置方案后调用。Called when a predefined, automatic formatting scheme has been applied to the associated control.

(继承自 ControlDesigner)
OnBehaviorAttached()

将控件设计器附加到 Behavior 对象时调用。Called when the control designer is attached to a Behavior object.

(继承自 ControlDesigner)
OnBehaviorDetaching()

当某个行为与该元素取消关联时被调用。Called when a behavior disassociates from the element.

(继承自 HtmlControlDesigner)
OnBindingsCollectionChanged(String)

在数据绑定集合发生更改时调用。Called when the data-binding collection changes.

(继承自 ControlDesigner)
OnClick(DesignerRegionMouseEventArgs)

当用户在设计时单击关联控件时由设计宿主调用。Called by the design host when the user clicks the associated control at design time.

(继承自 ControlDesigner)
OnComponentChanged(Object, ComponentChangedEventArgs)

在关联控件发生更改时调用。Called when the associated control changes.

(继承自 ControlDesigner)
OnComponentChanging(Object, ComponentChangingEventArgs)

表示将处理关联控件的 ComponentChanging 事件的方法。Represents the method that will handle the ComponentChanging event for the associated control.

(继承自 ControlDesigner)
OnControlResize()

关联的 Web 服务器控件的大小在设计宿主中发生设计时调整后被调用。Called when the associated Web server control has been resized in the design host at design time.

(继承自 ControlDesigner)
OnDataSourceChanged(EventArgs)

当数据源的属性已更改且 DataSourceChanged 值为 false 时,引发 SuppressingDataSourceEvents 事件。Raises the DataSourceChanged event when the properties of the data source have changed and the SuppressingDataSourceEvents value is false.

OnPaint(PaintEventArgs)

当控件设计器在设计图面上绘制关联控件,且 CustomPaint 的值为 true 时调用。Called when the control designer draws the associated control on the design surface, if the CustomPaint value is true.

(继承自 ControlDesigner)
OnSchemaRefreshed(EventArgs)

当数据源的架构已更改且 SchemaRefreshed 值为 false 时,引发 SuppressingDataSourceEvents 事件。Raises the SchemaRefreshed event when the schema of the data source has changed and the SuppressingDataSourceEvents value is false.

OnSetComponentDefaults()

设置组件的默认属性。Sets the default properties for the component.

(继承自 ComponentDesigner)
OnSetParent()

提供一种在将关联控件附加到父控件时执行附加处理的方式。Provides a way to perform additional processing when the associated control is attached to a parent control.

(继承自 HtmlControlDesigner)
PostFilterAttributes(IDictionary)

允许设计器从通过 TypeDescriptor 公开的特性集中更改或移除项。Allows a designer to change or remove items from the set of attributes that it exposes through a TypeDescriptor.

(继承自 ComponentDesigner)
PostFilterEvents(IDictionary)

允许设计器从通过 TypeDescriptor 公开的事件集中更改或移除项。Allows a designer to change or remove items from the set of events that it exposes through a TypeDescriptor.

(继承自 ComponentDesigner)
PostFilterProperties(IDictionary)

允许设计器从通过 TypeDescriptor 公开的属性集中更改或移除项。Allows a designer to change or remove items from the set of properties that it exposes through a TypeDescriptor.

(继承自 ComponentDesigner)
PreFilterAttributes(IDictionary)

允许设计器在通过 TypeDescriptor 公开的特性集中添加项。Allows a designer to add to the set of attributes that it exposes through a TypeDescriptor.

(继承自 ComponentDesigner)
PreFilterEvents(IDictionary)

设置在设计时为用于组件的 TypeDescriptor 对象公开的事件列表。Sets the list of events that are exposed at design-time for the TypeDescriptor object for the component.

(继承自 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.

(继承自 ControlDesigner)
RaiseComponentChanged(MemberDescriptor, Object, Object)

通知 IComponentChangeService 此组件已被更改。Notifies the IComponentChangeService that this component has been changed.

(继承自 ComponentDesigner)
RaiseComponentChanging(MemberDescriptor)

通知 IComponentChangeService 此组件即将被更改。Notifies the IComponentChangeService that this component is about to be changed.

(继承自 ComponentDesigner)
RaiseResizeEvent()

引发 OnControlResize() 事件。Raises the OnControlResize() event.

(继承自 ControlDesigner)
RefreshSchema(Boolean)

在可以选择取消事件时从数据源刷新架构。Refreshes the schema from the data source, while optionally suppressing events.

RegisterClone(Object, Object)

注册克隆控件中的内部数据。Registers internal data in a cloned control.

(继承自 ControlDesigner)
ResumeDataSourceEvents()

在已取消数据源事件之后恢复数据源事件。Restores data source events after the data source events have been suppressed.

SchemasEquivalent(IDataSourceSchema, IDataSourceSchema)

提供一个值,该值指示两个架构是否相等。Provides a value that indicates whether two schemas are equal.

SetEditableDesignerRegionContent(EditableDesignerRegion, String)

指定设计时控件可编辑区域的内容。Specifies the content for an editable region of the control at design time.

(继承自 ControlDesigner)
SetRegionContent(EditableDesignerRegion, String)

指定控件设计时视图中可编辑区域的内容。Specifies the content for an editable region in the design-time view of the control.

(继承自 ControlDesigner)
SetViewFlags(ViewFlags, Boolean)

将指定的按位 ViewFlags 枚举分配给指定的标志值。Assigns the specified bitwise ViewFlags enumeration to the specified flag value.

(继承自 ControlDesigner)
SuppressDataSourceEvents()

推迟所有数据源事件,直到 ResumeDataSourceEvents() 方法被调用为止。Postpones all data source events until after the ResumeDataSourceEvents() method is called.

ToString()

返回表示当前对象的字符串。Returns a string that represents the current object.

(继承自 Object)
UpdateDesignTimeHtml()

通过调用 GetDesignTimeHtml 方法刷新关联 Web 服务器控件的设计时 HTML 标记。Refreshes the design-time HTML markup for the associated Web server control by calling the GetDesignTimeHtml method.

(继承自 ControlDesigner)
ViewSchemasEquivalent(IDataSourceViewSchema, IDataSourceViewSchema)

提供一个值,该值确定两个架构视图是否相等。Provides a value that determines whether two schema views are equal.

事件

DataSourceChanged

当关联数据源的任何属性发生更改时发生。Occurs when any property of the associated data source changes.

SchemaRefreshed

在架构刷新后发生。Occurs after the schema has been refreshed.

显式接口实现

IDesignerFilter.PostFilterAttributes(IDictionary)

有关此成员的说明,请参见 PostFilterAttributes(IDictionary) 方法。For a description of this member, see the PostFilterAttributes(IDictionary) method.

(继承自 ComponentDesigner)
IDesignerFilter.PostFilterEvents(IDictionary)

有关此成员的说明,请参见 PostFilterEvents(IDictionary) 方法。For a description of this member, see the PostFilterEvents(IDictionary) method.

(继承自 ComponentDesigner)
IDesignerFilter.PostFilterProperties(IDictionary)

有关此成员的说明,请参见 PostFilterProperties(IDictionary) 方法。For a description of this member, see the PostFilterProperties(IDictionary) method.

(继承自 ComponentDesigner)
IDesignerFilter.PreFilterAttributes(IDictionary)

有关此成员的说明,请参见 PreFilterAttributes(IDictionary) 方法。For a description of this member, see the PreFilterAttributes(IDictionary) method.

(继承自 ComponentDesigner)
IDesignerFilter.PreFilterEvents(IDictionary)

有关此成员的说明,请参见 PreFilterEvents(IDictionary) 方法。For a description of this member, see the PreFilterEvents(IDictionary) method.

(继承自 ComponentDesigner)
IDesignerFilter.PreFilterProperties(IDictionary)

有关此成员的说明,请参见 PreFilterProperties(IDictionary) 方法。For a description of this member, see the PreFilterProperties(IDictionary) method.

(继承自 ComponentDesigner)
ITreeDesigner.Children

有关此成员的说明,请参见 Children 属性。For a description of this member, see the Children property.

(继承自 ComponentDesigner)
ITreeDesigner.Parent

有关此成员的说明,请参见 Parent 属性。For a description of this member, see the Parent property.

(继承自 ComponentDesigner)

适用于

另请参阅