PropertyGridEditorPart 类

定义

提供一个编辑器控件,最终用户使用该控件可以编辑关联的 WebPart 或服务器控件的自定义属性。Provides an editor control that enables end users to edit custom properties on an associated WebPart or server control. 此类不能被继承。This class cannot be inherited.

public ref class PropertyGridEditorPart sealed : System::Web::UI::WebControls::WebParts::EditorPart
public sealed class PropertyGridEditorPart : System.Web.UI.WebControls.WebParts.EditorPart
type PropertyGridEditorPart = class
    inherit EditorPart
Public NotInheritable Class PropertyGridEditorPart
Inherits EditorPart
继承
PropertyGridEditorPart

示例

下面的代码示例演示如何 PropertyGridEditorPart 在网页上声明控件,并使其能够编辑控件的多个 UI 属性 WebPartThe following code example demonstrates how to declare a PropertyGridEditorPart control on a Web page, and enable it to edit several UI properties of a WebPart control. 此代码示例包含四个部分:The code example has four parts:

  • 使您能够在 Web 部件页上更改显示模式的用户控件。A user control that enables you to change display modes on a Web Parts page.

  • 包含 EditorZone 控件和控件的网页 PropertyGridEditorPart ,以及对自定义控件的引用 WebPartA Web page that contains an EditorZone control and a PropertyGridEditorPart control, along with a reference to a custom WebPart control.

  • 一个包含自定义控件的类 WebPartA class that contains the custom WebPart control.

  • 说明如何在浏览器中加载页面时工作。An explanation of how the example works when you load the page in a browser.

该用户控件的源代码来自其他主题。The source code for the user control comes from another topic. 要使此代码示例正常运行,你需要从 演练:更改 Web 部件页上的显示模式 主题中获取该用户控件的 .ascx 文件,并将该文件放在此代码示例中 .aspx 页面所在的同一文件夹中。For this code example to work, you need to obtain the .ascx file for the user control from the Walkthrough: Changing Display Modes on a Web Parts Page topic, and place the file in the same folder as the .aspx page in this code example.

此代码示例的第二部分是网页。The second part of the code example is the Web page. 它包含对控件的声明性引用 EditorZone ,其中包含一个子 <zonetemplate> 元素,其中包含对控件的声明性引用 PropertyGridEditorPartIt contains a declarative reference to an EditorZone control, with a child <zonetemplate> element that contains a declarative reference to a PropertyGridEditorPart control. 页面引用自定义 WebPart 控件,对 Register 程序集使用指令,并使用控件的 <aspSample:UserInfoWebPart> 元素。The page references the custom WebPart control, using a Register directive for the assembly, and the <aspSample:UserInfoWebPart> element for the control.

<%@ page language="c#" %>
<%@ register TagPrefix="uc1" 
  TagName="DisplayModeMenuCS" 
  Src="DisplayModeMenuCS.ascx" %>
<%@ register tagprefix="aspSample" 
  Namespace="Samples.AspNet.CS.Controls" 
  Assembly="UserInfoWebPartCS" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
  
  protected void Page_Load(object sender, EventArgs e)
  {
    Button1.Visible = false;
    TextBox1.Visible = false;
  }

  // <snippet3>
  private static String editControlTitle;
  
  protected void Button1_Click(object sender, EventArgs e)
  {
    editControlTitle = Server.HtmlEncode(TextBox1.Text);
    PropertyGridEditorPart1.Title = editControlTitle;
  }

  protected void PropertyGridEditorPart1_Init(object sender, EventArgs e)
  {
    if (editControlTitle != null)
      PropertyGridEditorPart1.Title = editControlTitle;
  }  
  // </snippet3>

  // <snippet4>
  protected void PropertyGridEditorPart1_PreRender(object sender,
    EventArgs e)
  {
    Button1.Visible = true;
    TextBox1.Visible = true;
  }
  // </snippet4> 

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>
      User Information WebPart with EditorPart
    </title>
  </head>
  <body>
    <form id="form1" runat="server">
      <asp:webpartmanager id="WebPartManager1" runat="server"  />
      <uc1:DisplayModeMenuCS ID="DisplayModeMenu1" runat="server" />
      <asp:webpartzone id="zone1" runat="server" >
        <PartTitleStyle BorderWidth="1" 
          Font-Names="Verdana, Arial"
          Font-Size="110%"
          BackColor="LightBlue" />
        <zonetemplate>
          <aspSample:UserInfoWebPart 
            runat="server"   
            id="userinfo" 
            title = "User Information WebPart"
            BackColor="Beige" />          
        </zonetemplate>
      </asp:webpartzone> 
      <div>
      <hr />
      <asp:Button ID="Button1" runat="server" 
        Text="Update EditorPart Title" 
        OnClick="Button1_Click" />
      <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
      </div>
      <asp:EditorZone ID="EditorZone1" runat="server">
        <ZoneTemplate>
          <asp:PropertyGridEditorPart ID="PropertyGridEditorPart1" 
            runat="server" 
            Title="Edit Custom Properties"
            OnPreRender="PropertyGridEditorPart1_PreRender" 
            OnInit="PropertyGridEditorPart1_Init" />   
        </ZoneTemplate>
      </asp:EditorZone>
    </form>
  </body>
</html>
<%@ page language="VB" %>
<%@ register TagPrefix="uc1" 
  TagName="DisplayModeMenuVB" 
  Src="DisplayModeMenuVB.ascx" %>
<%@ register tagprefix="aspSample" 
  Namespace="Samples.AspNet.VB.Controls" 
  Assembly="UserInfoWebPartVB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  Protected Sub Page_Load(ByVal sender As Object, _
    ByVal e As System.EventArgs)
    Button1.Visible = False
    TextBox1.Visible = False
  End Sub

  ' <snippet3>
  Shared editControlTitle As String
  
  Protected Sub Button1_Click(ByVal sender As Object, _
    ByVal e As System.EventArgs)
    editControlTitle = Server.HtmlEncode(TextBox1.Text)
    PropertyGridEditorPart1.Title = editControlTitle 
  End Sub
  
  Protected Sub PropertyGridEditorPart1_Init(ByVal _
    sender As Object, ByVal e As System.EventArgs)
    If Not editControlTitle Is Nothing Then
      PropertyGridEditorPart1.Title = editControlTitle
    End If
  End Sub
  ' </snippet3>

  ' <snippet4>
  Protected Sub PropertyGridEditorPart1_PreRender(ByVal _
    sender As Object, ByVal e As System.EventArgs)
    Button1.Visible = True
    TextBox1.Visible = True
  End Sub
  ' </snippet4>

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head id="Head1" runat="server">
    <title>
      User Information WebPart with EditorPart
    </title>
  </head>
  <body>
    <form id="form1" runat="server">
      <asp:webpartmanager id="WebPartManager1" runat="server"  />
      <uc1:DisplayModeMenuVB ID="DisplayModeMenu1" runat="server" />
      <asp:webpartzone id="zone1" runat="server" >
        <PartTitleStyle BorderWidth="1" 
          Font-Names="Verdana, Arial"
          Font-Size="110%"
          BackColor="LightBlue" />
        <zonetemplate>
          <aspSample:UserInfoWebPart 
            runat="server"   
            id="userinfo" 
            title = "User Information WebPart"
            BackColor="Beige" />          
        </zonetemplate>
      </asp:webpartzone> 
      <div>
      <hr />
      <asp:Button ID="Button1" runat="server" 
        Text="Update EditorPart Title" 
        OnClick="Button1_Click" />
      <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
      </div>
      <asp:EditorZone ID="EditorZone1" runat="server">
        <ZoneTemplate>
          <asp:PropertyGridEditorPart ID="PropertyGridEditorPart1" 
            runat="server" 
            Title="Edit Custom Properties"
            OnPreRender="PropertyGridEditorPart1_PreRender" 
            OnInit="PropertyGridEditorPart1_Init" />   
        </ZoneTemplate>
      </asp:EditorZone>
    </form>
  </body>
</html>

此代码示例的第三部分是一个名为的自定义 WebPartUserInfoWebPart ,在网页中被引用。The third part of the code example is a custom WebPart class named UserInfoWebPart, which is referenced in the Web page. 请注意,包含有关用户的信息的各种属性均使用特性进行标记 WebBrowsableNotice that the various properties that contain information about a user are all marked with the WebBrowsable attribute. 这使 PropertyGridEditorPart 控件能够提供用于编辑这些属性的 UI。This enables the PropertyGridEditorPart control to provide the UI for editing those properties. 属性也使用特性进行标记 WebDisplayName ,以指定显示在编辑 UI 中每个控件旁边的标签文本。The properties are also marked with a WebDisplayName attribute, to specify the text of the label that appears next to each control in the editing UI.

要使代码示例运行,必须编译此源代码。For the code example to run, you must compile this source code. 可以显式编译该程序集,并将生成的程序集放在网站的 Bin 文件夹或全局程序集缓存中。You can compile it explicitly and put the resulting assembly in your Web site's Bin folder or the global assembly cache. 或者,您可以将源代码放在站点的 App_Code 文件夹中,它将在运行时动态编译。Alternatively, you can put the source code in your site's App_Code folder, where it will be dynamically compiled at run time. 有关演示如何编译的演练,请参阅 演练:开发和使用自定义 Web 服务器控件For a walkthrough that demonstrates how to compile, see Walkthrough: Developing and Using a Custom Web Server Control.

重要

此示例具有一个接受用户输入的文本框,这是一个潜在的安全威胁。This example has a text box that accepts user input, which is a potential security threat. 默认情况下,ASP.NET 网页验证用户输入是否不包含脚本或 HTML 元素。By default, ASP.NET Web pages validate that user input does not include script or HTML elements. 有关详细信息,请参阅脚本侵入概述For more information, see Script Exploits Overview.

using System;
using System.Collections;
using System.ComponentModel;
using System.Drawing;
using System.Security.Permissions;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;

namespace Samples.AspNet.CS.Controls
{
  [AspNetHostingPermission(SecurityAction.Demand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  [AspNetHostingPermission(SecurityAction.InheritanceDemand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  public class UserInfoWebPart : WebPart
  {
    HttpServerUtility server = HttpContext.Current.Server;
    private String _userNickName = "Add a nickname.";
    private String _userPetName = "Add a pet name.";
    private DateTime _userSpecialDate = DateTime.Now;
    private Boolean _userIsCurrent = true;
    private JobTypeName _userJobType = JobTypeName.Unselected;
    public enum JobTypeName
    {
      Unselected = 0,
      Support = 1,
      Service = 2,
      Professional = 3, 
      Technical = 4,
      Manager = 5,
      Executive = 6
    }
    Label NickNameLabel;
    Label PetNickNameLabel;
    Label SpecialDateLabel;
    CheckBox IsCurrentCheckBox;
    Label JobTypeLabel;

    // Add the Personalizable and WebBrowsable attributes to the  
    // public properties, so that users can save property values  
    // and edit them with a PropertyGridEditorPart control.
    [Personalizable(), WebBrowsable, WebDisplayName("Nickname")]
    public String NickName
    {
      get 
      { 
        object o = ViewState["NickName"];
        if (o != null)
          return (string)o;
        else
          return _userNickName;        
      } 

      set { _userNickName = server.HtmlEncode(value); }
    }

    [Personalizable(), WebBrowsable, WebDisplayName("Pet Name")]
    public String PetName
    {
      get 
      { 
        object o = ViewState["PetName"];
        if (o != null)
          return (string)o;
        else
          return _userPetName;        
      }

      set { _userPetName = server.HtmlEncode(value); }
    }

    [Personalizable(), WebBrowsable(), WebDisplayName("Special Day")]
    public DateTime SpecialDay
    {
      get
      {
        object o = ViewState["SpecialDay"];
        if (o != null)
          return (DateTime)o;
        else
          return _userSpecialDate;
      }

      set { _userSpecialDate = value; }
    }

    [Personalizable(), WebBrowsable(), WebDisplayName("Job Type"), 
      WebDescription("Select the category that corresponds to your job.")]
    public JobTypeName UserJobType
    {
      get
      {
        object o = ViewState["UserJobType"];
        if (o != null)
          return (JobTypeName)o;
        else
          return _userJobType;
      }

      set { _userJobType = (JobTypeName)value; }
    }

    [Personalizable(), WebBrowsable(), WebDisplayName("Is Current")]
    public Boolean IsCurrent
    {
      get
      {
        object o = ViewState["IsCurrent"];
        if (o != null)
          return (Boolean)o;
        else
          return _userIsCurrent;
      }

      set { _userIsCurrent = value; }
    }

    protected override void CreateChildControls()
    {
      Controls.Clear();

      NickNameLabel = new Label();
      NickNameLabel.Text = this.NickName;
      SetControlAttributes(NickNameLabel);

      PetNickNameLabel = new Label();
      PetNickNameLabel.Text = this.PetName;
      SetControlAttributes(PetNickNameLabel);

      SpecialDateLabel = new Label();
      SpecialDateLabel.Text = this.SpecialDay.ToShortDateString();
      SetControlAttributes(SpecialDateLabel);

      IsCurrentCheckBox = new CheckBox();
      IsCurrentCheckBox.Checked = this.IsCurrent;
      SetControlAttributes(IsCurrentCheckBox);

      JobTypeLabel = new Label();
      JobTypeLabel.Text = this.UserJobType.ToString();
      SetControlAttributes(JobTypeLabel);

      ChildControlsCreated = true;
    }

    private void SetControlAttributes(WebControl ctl)
    {
      ctl.BackColor = Color.White;
      ctl.BorderWidth = 1;
      ctl.Width = 200;
      this.Controls.Add(ctl);
    }

    protected override void RenderContents(HtmlTextWriter writer)
    {
      writer.Write("Nickname:");
      writer.WriteBreak();
      NickNameLabel.RenderControl(writer);
      writer.WriteBreak();
      writer.Write("Pet Name:");
      writer.WriteBreak();
      PetNickNameLabel.RenderControl(writer);
      writer.WriteBreak();
      writer.Write("Special Date:");
      writer.WriteBreak();
      SpecialDateLabel.RenderControl(writer);
      writer.WriteBreak();
      writer.Write("Job Type:");
      writer.WriteBreak();
      JobTypeLabel.RenderControl(writer);
      writer.WriteBreak();
      writer.Write("Current:");
      writer.WriteBreak();
      IsCurrentCheckBox.RenderControl(writer);
    }
  }
}
Imports System.Collections
Imports System.ComponentModel
Imports System.Drawing
Imports System.Security.Permissions
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Web.UI.WebControls.WebParts

Namespace Samples.AspNet.VB.Controls

  <AspNetHostingPermission(SecurityAction.Demand, _
    Level:=AspNetHostingPermissionLevel.Minimal)> _
  <AspNetHostingPermission(SecurityAction.InheritanceDemand, _
    Level:=AspNetHostingPermissionLevel.Minimal)> _
  Public Class UserInfoWebPart
    Inherits WebPart
    Private server As HttpServerUtility = HttpContext.Current.Server
    Private _userNickName As String = "Add a nickname."
    Private _userPetName As String = "Add a pet name."
    Private _userSpecialDate As DateTime = DateTime.Now
    Private _userIsCurrent As [Boolean] = True
    Private _userJobType As JobTypeName = JobTypeName.Unselected

    Public Enum JobTypeName
      Unselected = 0
      Support = 1
      Service = 2
      Professional = 3
      Technical = 4
      Manager = 5
      Executive = 6
    End Enum

    Private NickNameLabel As Label
    Private PetNickNameLabel As Label
    Private SpecialDateLabel As Label
    Private IsCurrentCheckBox As CheckBox
    Private JobTypeLabel As Label

    ' Add the Personalizable and WebBrowsable attributes to the  
    ' public properties, so that users can save property values  
    ' and edit them with a PropertyGridEditorPart control.

    <Personalizable(), WebBrowsable(), WebDisplayName("Nickname")> _
    Public Property NickName() As String
      Get
        Dim o As Object = ViewState("NickName")
        If Not (o Is Nothing) Then
          Return CStr(o)
        Else
          Return _userNickName
        End If
      End Get
      Set(ByVal value As String)
        _userNickName = server.HtmlEncode(value)
      End Set
    End Property

    <Personalizable(), WebBrowsable(), WebDisplayName("Pet Name")> _
    Public Property PetName() As String
      Get
        Dim o As Object = ViewState("PetName")
        If Not (o Is Nothing) Then
          Return CStr(o)
        Else
          Return _userPetName
        End If
      End Get
      Set(ByVal value As String)
        _userPetName = server.HtmlEncode(value)
      End Set
    End Property

    <Personalizable(), WebBrowsable(), WebDisplayName("Special Day")> _
    Public Property SpecialDay() As DateTime
      Get
        Dim o As Object = ViewState("SpecialDay")
        If Not (o Is Nothing) Then
          Return CType(o, DateTime)
        Else
          Return _userSpecialDate
        End If
      End Get

      Set(ByVal value As DateTime)
        _userSpecialDate = value
      End Set
    End Property

    <Personalizable(), WebBrowsable(), WebDisplayName("Job Type"), _
      WebDescription("Select the category that corresponds to your job.")> _
    Public Property UserJobType() As JobTypeName
      Get
        Dim o As Object = ViewState("UserJobType")
        If Not (o Is Nothing) Then
          Return CType(o, JobTypeName)
        Else
          Return _userJobType
        End If
      End Get
      Set(ByVal value As JobTypeName)
        _userJobType = CType(value, JobTypeName)
      End Set
    End Property

    <Personalizable(), WebBrowsable(), WebDisplayName("Is Current")> _
    Public Property IsCurrent() As [Boolean]
      Get
        Dim o As Object = ViewState("IsCurrent")
        If Not (o Is Nothing) Then
          Return CType(o, [Boolean])
        Else
          Return _userIsCurrent
        End If
      End Get
      Set(ByVal value As [Boolean])
        _userIsCurrent = value
      End Set
    End Property

    Protected Overrides Sub CreateChildControls()
      Controls.Clear()

      NickNameLabel = New Label()
      NickNameLabel.Text = Me.NickName
      SetControlAttributes(NickNameLabel)

      PetNickNameLabel = New Label()
      PetNickNameLabel.Text = Me.PetName
      SetControlAttributes(PetNickNameLabel)

      SpecialDateLabel = New Label()
      SpecialDateLabel.Text = Me.SpecialDay.ToShortDateString()
      SetControlAttributes(SpecialDateLabel)

      IsCurrentCheckBox = New CheckBox()
      IsCurrentCheckBox.Checked = Me.IsCurrent
      SetControlAttributes(IsCurrentCheckBox)

      JobTypeLabel = New Label()
      JobTypeLabel.Text = Me.UserJobType.ToString()
      SetControlAttributes(JobTypeLabel)

      ChildControlsCreated = True

    End Sub

    Private Sub SetControlAttributes(ByVal ctl As WebControl)
      ctl.BackColor = Color.White
      ctl.BorderWidth = 1
      ctl.Width = 200
      Me.Controls.Add(ctl)
    End Sub

    Protected Overrides Sub RenderContents(ByVal writer As HtmlTextWriter)
      writer.Write("Nickname:")
      writer.WriteBreak()
      NickNameLabel.RenderControl(writer)
      writer.WriteBreak()
      writer.Write("Pet Name:")
      writer.WriteBreak()
      PetNickNameLabel.RenderControl(writer)
      writer.WriteBreak()
      writer.Write("Special Date:")
      writer.WriteBreak()
      SpecialDateLabel.RenderControl(writer)
      writer.WriteBreak()
      writer.Write("Job Type:")
      writer.WriteBreak()
      JobTypeLabel.RenderControl(writer)
      writer.WriteBreak()
      writer.Write("Current:")
      writer.WriteBreak()
      IsCurrentCheckBox.RenderControl(writer)

    End Sub

  End Class

End Namespace

在浏览器中加载页面时,请在 "显示模式" 下拉列表控件中选择 "编辑模式" 以切换到编辑模式。When you load the page in a browser, select Edit Mode in the Display Mode drop-down list control to switch to edit mode. 您可以在 " 用户信息" Web 部件 控件的标题栏中 (向下箭头) 单击谓词菜单,然后单击 " 编辑 " 以编辑控件。You can click the verbs menu (the downward arrow) in the title bar of the User Information WebPart control, and click Edit to edit the control. 编辑 UI 可见后,可以看到 PropertyGridEditorPart 控件。When the editing UI is visible, you can see the PropertyGridEditorPart control. 请注意,将基于属性的类型为类的每个属性呈现一个控件 UserInfoWebPartNotice that a control is rendered for each of the properties of the UserInfoWebPart class, based on the type of the property. 如果在编辑 UI 中进行一些更改,并单击 " 应用 " 按钮,则可以使用 " 显示模式 " 下拉列表将页面返回到浏览模式,并查看编辑更改的完整效果。If you make some changes in the editing UI and click the Apply button, you can use the Display Mode drop-down list to return the page to browse mode and see the full effect of the editing changes.

注解

PropertyGridEditorPart提供了一个 (UI) 的泛型用户界面,用户可以使用该界面编辑位于 WebPart 区域中的和服务器控件上的自定义属性 WebPartZoneBaseThe PropertyGridEditorPart provides a generic user interface (UI) that enables users to edit custom properties on WebPart and server controls placed in WebPartZoneBase zones. 相反,其他控件(如 EditorPart AppearanceEditorPartBehaviorEditorPart 控件)只编辑类中现有的、面向 UI 的属性 WebPartIn contrast, the other EditorPart controls, such as the AppearanceEditorPart and BehaviorEditorPart controls, edit only existing, UI-oriented properties from the WebPart class.

正如 Web 部件控件集中的面向工具的区域 (有关详细信息,请参阅 ToolZone 类概述) ,提供面向工具的部件控件,其中每个控件都必须位于相应的工具区域中。Just as there are tool-oriented zones in the Web Parts control set (for details, see the ToolZone class overview), there are tool-oriented part controls, and each of these must reside in a corresponding type of tool zone. Web 部件控件集中的这类控件具有两个区分特征:These kind of controls in the Web Parts control set have two distinguishing characteristics:

  • 它们是帮助者控件,使最终用户能够个性化窗体,这些控件在 Web 部件应用程序中构成页面的主要用户界面。They are helper controls that enable end users to personalize the controls that form the primary UI of a page in a Web Parts application.

  • 它们仅在某些页面显示模式中可见。They are visible only in certain page display modes.

PropertyGridEditorPart控件是一种特殊的控件,仅当网页处于编辑模式时,并且用户选择了特定的 WebPart 或服务器控件进行编辑时,此控件才可见。The PropertyGridEditorPart control is a special control, and it becomes visible only when a Web page is in edit mode, and when a specific WebPart or server control has been selected by a user for editing. PropertyGridEditorPart与所有其他 EditorPart 控件一样,控件必须位于 EditorZone 页面上的某个区域中。The PropertyGridEditorPart control, like all other EditorPart controls, must reside in an EditorZone zone on the page.

重要

EditorZone区域只能包含 EditorPart 控件,而 EditorPart 不能将控件置于任何其他类型的区域中。An EditorZone zone can contain only EditorPart controls, and EditorPart controls cannot be placed in any other type of zone.

PropertyGridEditorPart控件为源代码中标记的属性提供了一个编辑 UI,该属性是在 WebBrowsable) 类的属性 (WebBrowsableAttributeThe PropertyGridEditorPart control provides an editing UI for properties that are marked in the source code with the WebBrowsable attribute (from the WebBrowsableAttribute class). 使用此特性标记属性时, PropertyGridEditorPart 控件将基于属性的类型创建编辑 UI,并在需要时使用 PropertyDescriptor 对象将每个编辑控件中的值转换为属性的类型。When a property is marked with this attribute, a PropertyGridEditorPart control creates the editing UI based on the type of the property, and uses a PropertyDescriptor object if needed to convert the value in each editing control to the type of the property. 您还可以添加其他属性,以帮助 PropertyGridEditorPart 控件显示编辑 UI。You can also add other attributes that help the PropertyGridEditorPart control to display the editing UI. WebDisplayName类) 中的特性 (WebDisplayNameAttribute 允许您为在编辑 UI 中显示的每个控件指定显示的标签文本。The WebDisplayName attribute (from the WebDisplayNameAttribute class) allows you to specify the text for the label that appears with each control in the editing UI. WebDescription类) 中的特性 (WebDescriptionAttribute 允许您指定一个字符串,该字符串在编辑 UI 中显示为每个控件的工具提示。The WebDescription attribute (from the WebDescriptionAttribute class) allows you to specify a string that appears as a ToolTip for each control in the editing UI.

下表列出了为编辑各种类型的属性而创建的控件。The controls created to edit properties of various types are listed in the following table.

属性类型Property type 用于编辑属性的控件Control created to edit the property
StringString TextBox
Int、Float、UnitInt, Float, Unit TextBox
布尔Boolean CheckBox
Enum DropDownList (包含枚举值的列表) DropDownList (contains the list of enumerated values)
DateTime TextBox

PropertyGridEditorPart类具有一个 Title 属性,该属性用于获取或设置控件的可见标题文本。The PropertyGridEditorPart class has a Title property, which is used to get or set the visible title text for the control. 还有一个受保护的 Display 属性,该属性确定当页面进入编辑模式时是否显示该控件。There is also a protected Display property, which determines whether the control is displayed when the page enters edit mode.

PropertyGridEditorPart类还具有两个重要的方法: ApplyChangesSyncChanges ,它们从类继承 EditorPart 并重写。The PropertyGridEditorPart class also has two important methods, ApplyChanges and SyncChanges, which it inherits from the EditorPart class and overrides. 方法非常重要,因为它们允许获取和设置编辑器控件的字段值和正在编辑的控件的属性之间的属性值 WebPartThe methods are critical because they enable getting and setting the property values between the field values of the editor control and the properties on the WebPart control being edited.

由于 PropertyGridEditorPart 控件只允许您编辑自定义属性,因此您将需要 EditorPart Web 部件控件集中的其他控件来编辑控件的外观、布局和行为 WebPartBecause the PropertyGridEditorPart control allows you to edit only custom properties, you will need the other EditorPart controls in the Web Parts control set to edit the appearance, layout, and behavior of WebPart controls. 其他控件包括 BehaviorEditorPartLayoutEditorPartAppearanceEditorPart 控件。The other controls include the BehaviorEditorPart, the LayoutEditorPart, and the AppearanceEditorPart controls. 这些 EditorPart 控件应提供编辑控件所需的大多数编辑功能 WebPart ,但如有必要,还可以通过从类继承来创建自定义编辑器控件 EditorPartThese EditorPart controls should provide most editing features required to edit WebPart controls, but if necessary, you can also create a custom editor control by inheriting from the EditorPart class. 有关代码示例,请参阅 EditorPart 类概述主题。For a code example, see the EditorPart class overview topic.

备注

为了提高可访问性, PropertyGridEditorPart 控件在元素中呈现 <fieldset>To improve accessibility, the PropertyGridEditorPart control is rendered within a <fieldset> element. <fieldset>元素对用于在控件中进行编辑的相关控件集进行分组 PropertyGridEditorPart ,并为视觉用户代理 ((例如普通 Web 浏览器) 和面向语音的用户代理 (如屏幕阅读软件) 等)中的控件提供选项卡式导航。The <fieldset> element groups the related set of controls used for editing in the PropertyGridEditorPart control, and it facilitates tabbed navigation among those controls for both visual user agents (such as ordinary Web browsers) and speech-oriented user agents (such as screen-reading software).

可访问性Accessibility

默认情况下,为此控件呈现的标记可能不符合辅助功能标准,例如 Web 内容可访问性准则 1.0 (WCAG) 优先级1指导原则。The markup rendered by default for this control might not conform to accessibility standards such as the Web Content Accessibility Guidelines 1.0 (WCAG) priority 1 guidelines. 有关此控件的辅助功能支持的详细信息,请参阅 ASP.NET 控件和辅助功能For details about accessibility support for this control, see ASP.NET Controls and Accessibility.

构造函数

PropertyGridEditorPart()

创建该类的一个新实例。Creates a new instance of the class.

属性

AccessKey

获取或设置使您得以快速导航到 Web 服务器控件的访问键。Gets or sets the access key that allows you to quickly navigate to the Web server control.

(继承自 WebControl)
Adapter

获取控件的浏览器特定适配器。Gets the browser-specific adapter for the control.

(继承自 Control)
AppRelativeTemplateSourceDirectory

获取或设置包含该控件的 PageUserControl 对象的应用程序相对虚拟目录。Gets or sets the application-relative virtual directory of the Page or UserControl object that contains this control.

(继承自 Control)
Attributes

获取与控件的特性不对应的任意特性(只用于呈现)的集合。Gets the collection of arbitrary attributes (for rendering only) that do not correspond to properties on the control.

(继承自 WebControl)
BackColor

获取或设置 Web 服务器控件的背景色。Gets or sets the background color of the Web server control.

(继承自 WebControl)
BackImageUrl

获取或设置面板控件背景图像的 URL。Gets or sets the URL of the background image for the panel control.

(继承自 Panel)
BindingContainer

获取包含该控件的数据绑定的控件。Gets the control that contains this control's data binding.

(继承自 Control)
BorderColor

获取或设置 Web 控件的边框颜色。Gets or sets the border color of the Web control.

(继承自 WebControl)
BorderStyle

获取或设置 Web 服务器控件的边框样式。Gets or sets the border style of the Web server control.

(继承自 WebControl)
BorderWidth

获取或设置 Web 服务器控件的边框宽度。Gets or sets the border width of the Web server control.

(继承自 WebControl)
ChildControlsCreated

获取一个值,该值指示是否已创建服务器控件的子控件。Gets a value that indicates whether the server control's child controls have been created.

(继承自 Control)
ChromeState

获取或设置部件控件是处于最小化状态还是正常状态。Gets or sets whether a part control is in a minimized or normal state.

(继承自 Part)
ChromeType

获取或设置构成 Web 部件控件的框架的边框类型。Gets or sets the type of border that frames a Web Parts control.

(继承自 Part)
ClientID

获取由 ASP.NET 生成的 HTML 标记的控件 ID。Gets the control ID for HTML markup that is generated by ASP.NET.

(继承自 Control)
ClientIDMode

获取或设置用于生成 ClientID 属性值的算法。Gets or sets the algorithm that is used to generate the value of the ClientID property.

(继承自 Control)
ClientIDSeparator

获取一个字符值,该值表示 ClientID 属性中使用的分隔符字符。Gets a character value representing the separator character used in the ClientID property.

(继承自 Control)
Context

为当前 Web 请求获取与服务器控件关联的 HttpContext 对象。Gets the HttpContext object associated with the server control for the current Web request.

(继承自 Control)
Controls

获取 ControlCollection 对象,该对象包含用户界面层次结构中指定服务器控件的子控件。Gets a ControlCollection object that contains the child controls for a specified server control in the user interface hierarchy.

(继承自 Part)
ControlStyle

获取 Web 服务器控件的样式。Gets the style of the Web server control. 此属性主要由控件开发人员使用。This property is used primarily by control developers.

(继承自 WebControl)
ControlStyleCreated

获取一个值,该值指示是否已为 Style 属性创建了 ControlStyle 对象。Gets a value indicating whether a Style object has been created for the ControlStyle property. 此属性主要由控件开发人员使用。This property is primarily used by control developers.

(继承自 WebControl)
CssClass

获取或设置由 Web 服务器控件在客户端呈现的级联样式表 (CSS) 类。Gets or sets the Cascading Style Sheet (CSS) class rendered by the Web server control on the client.

(继承自 WebControl)
DataItemContainer

如果命名容器实现 IDataItemContainer,则获取对命名容器的引用。Gets a reference to the naming container if the naming container implements IDataItemContainer.

(继承自 Control)
DataKeysContainer

如果命名容器实现 IDataKeysControl,则获取对命名容器的引用。Gets a reference to the naming container if the naming container implements IDataKeysControl.

(继承自 Control)
DefaultButton

重写从 Panel 控件继承的基属性以在设计器中隐藏该属性,并防止它受主题影响。Overrides the base property inherited from the Panel control to hide the property from designers and prevent it from being affected by themes.

Description

获取或设置一条短语,该短语在部件控件的工具提示和目录中用来概述该部件控件的作用。Gets or sets a brief phrase that summarizes what the part control does, for use in ToolTips and catalogs of part controls.

(继承自 Part)
DesignMode

获取一个值,该值指示是否正在使用设计图面上的一个控件。Gets a value indicating whether a control is being used on a design surface.

(继承自 Control)
Direction

获取或设置在 Panel 控件中显示包含文本的控件的方向。Gets or sets the direction in which to display controls that include text in a Panel control.

(继承自 Panel)
Display

获取一个值,该值指示当某个控件的关联 WebPart 控件在编辑模式下时是否应显示该控件。Gets a value that indicates whether a control should be displayed when its associated WebPart control is in edit mode.

DisplayTitle

获取一个字符串,该字符串包含 EditorPart 控件的标题栏中显示的标题文本。Gets a string that contains the title text displayed in the title bar of an EditorPart control.

(继承自 EditorPart)
Enabled

获取或设置一个值,该值指示是否启用 Web 服务器控件。Gets or sets a value indicating whether the Web server control is enabled.

(继承自 WebControl)
EnableTheming

获取或设置一个值,该值指示主题是否应用于该控件。Gets or sets a value indicating whether themes apply to this control.

(继承自 WebControl)
EnableViewState

获取或设置一个值,该值指示服务器控件是否向发出请求的客户端保持自己的视图状态以及它所包含的任何子控件的视图状态。Gets or sets a value indicating whether the server control persists its view state, and the view state of any child controls it contains, to the requesting client.

(继承自 Control)
Events

获取控件的事件处理程序委托列表。Gets a list of event handler delegates for the control. 此属性是只读的。This property is read-only.

(继承自 Control)
Font

获取与 Web 服务器控件关联的字体属性。Gets the font properties associated with the Web server control.

(继承自 WebControl)
ForeColor

获取或设置 Web 服务器控件的前景色(通常是文本颜色)。Gets or sets the foreground color (typically the color of the text) of the Web server control.

(继承自 WebControl)
GroupingText

获取或设置面板控件中包含的控件组的标题。Gets or sets the caption for the group of controls that is contained in the panel control.

(继承自 Panel)
HasAttributes

获取一个值,该值指示控件是否具有特性集。Gets a value indicating whether the control has attributes set.

(继承自 WebControl)
HasChildViewState

获取一个值,该值指示当前服务器控件的子控件是否具有任何已保存的视图状态设置。Gets a value indicating whether the current server control's child controls have any saved view-state settings.

(继承自 Control)
Height

获取或设置 Web 服务器控件的高度。Gets or sets the height of the Web server control.

(继承自 WebControl)
HorizontalAlign

获取或设置面板内容的水平对齐方式。Gets or sets the horizontal alignment of the contents within the panel.

(继承自 Panel)
ID

获取或设置分配给服务器控件的编程标识符。Gets or sets the programmatic identifier assigned to the server control.

(继承自 Control)
IdSeparator

获取用于分隔控件标识符的字符。Gets the character used to separate control identifiers.

(继承自 Control)
IsChildControlStateCleared

获取一个值,该值指示该控件中包含的控件是否具有控件状态。Gets a value indicating whether controls contained within this control have control state.

(继承自 Control)
IsEnabled

获取一个值,该值指示是否启用控件。Gets a value indicating whether the control is enabled.

(继承自 WebControl)
IsTrackingViewState

获取一个值,用于指示服务器控件是否会将更改保存到其视图状态中。Gets a value that indicates whether the server control is saving changes to its view state.

(继承自 Control)
IsViewStateEnabled

获取一个值,该值指示是否为该控件启用了视图状态。Gets a value indicating whether view state is enabled for this control.

(继承自 Control)
LoadViewStateByID

获取一个值,该值指示控件是否通过 ID 而不是索引参与加载其视图状态。Gets a value indicating whether the control participates in loading its view state by ID instead of index.

(继承自 Control)
NamingContainer

获取对服务器控件的命名容器的引用,此引用创建唯一的命名空间,以区分具有相同 ID 属性值的服务器控件。Gets a reference to the server control's naming container, which creates a unique namespace for differentiating between server controls with the same ID property value.

(继承自 Control)
Page

获取对包含服务器控件的 Page 实例的引用。Gets a reference to the Page instance that contains the server control.

(继承自 Control)
Parent

获取对页 UI 层次结构中服务器控件的父控件的引用。Gets a reference to the server control's parent control in the page control hierarchy.

(继承自 Control)
RenderingCompatibility

获取一个值,该值指定呈现的 HTML 将与之兼容的 ASP.NET 版本。Gets a value that specifies the ASP.NET version that rendered HTML will be compatible with.

(继承自 Control)
ScrollBars

获取或设置 Panel 控件中滚动条的可见性和位置。Gets or sets the visibility and position of scroll bars in a Panel control.

(继承自 Panel)
Site

获取容器信息,该容器在呈现于设计图面上时承载当前控件。Gets information about the container that hosts the current control when rendered on a design surface.

(继承自 Control)
SkinID

获取或设置要应用于控件的外观。Gets or sets the skin to apply to the control.

(继承自 WebControl)
Style

获取将在 Web 服务器控件的外部标记上呈现为样式特性的文本特性的集合。Gets a collection of text attributes that will be rendered as a style attribute on the outer tag of the Web server control.

(继承自 WebControl)
SupportsDisabledAttribute

获取一个值,该值指示在控件的 disabled 属性为 IsEnabled 时,控件是否应将呈现的 HTML 元素的 false 特性设置为 "disabled"。Gets a value that indicates whether the control should set the disabled attribute of the rendered HTML element to "disabled" when the control's IsEnabled property is false.

(继承自 Panel)
TabIndex

获取或设置 Web 服务器控件的选项卡索引。Gets or sets the tab index of the Web server control.

(继承自 WebControl)
TagKey

获取对应于此 Web 服务器控件的 HtmlTextWriterTag 值。Gets the HtmlTextWriterTag value that corresponds to this Web server control. 此属性主要由控件开发人员使用。This property is used primarily by control developers.

(继承自 WebControl)
TagName

获取控件标记的名称。Gets the name of the control tag. 此属性主要由控件开发人员使用。This property is used primarily by control developers.

(继承自 WebControl)
TemplateControl

获取或设置对包含该控件的模板的引用。Gets or sets a reference to the template that contains this control.

(继承自 Control)
TemplateSourceDirectory

获取包含当前服务器控件的 PageUserControl 的虚拟目录。Gets the virtual directory of the Page or UserControl that contains the current server control.

(继承自 Control)
Title

获取或设置编辑器控件的标题。Gets or sets a title for the editor control.

ToolTip

获取或设置当鼠标指针悬停在 Web 服务器控件上时显示的文本。Gets or sets the text displayed when the mouse pointer hovers over the Web server control.

(继承自 WebControl)
UniqueID

获取服务器控件的唯一的、以分层形式限定的标识符。Gets the unique, hierarchically qualified identifier for the server control.

(继承自 Control)
ValidateRequestMode

获取或设置指示控件是否检查来自浏览器的客户端输入是否具有潜在危险值的值。Gets or sets a value that indicates whether the control checks client input from the browser for potentially dangerous values.

(继承自 Control)
ViewState

获取状态信息的字典,这些信息使您可以在同一页的多个请求间保存和还原服务器控件的视图状态。Gets a dictionary of state information that allows you to save and restore the view state of a server control across multiple requests for the same page.

(继承自 Control)
ViewStateIgnoresCase

获取一个值,该值指示 StateBag 对象是否不区分大小写。Gets a value that indicates whether the StateBag object is case-insensitive.

(继承自 Control)
ViewStateMode

获取或设置此控件的视图状态模式。Gets or sets the view-state mode of this control.

(继承自 Control)
Visible

获取或设置一个值,该值指示服务器控件是否作为 UI 呈现在页上。Gets or sets a value that indicates whether a server control is rendered as UI on the page.

(继承自 Control)
WebPartManager

获取对与当前网页关联的 WebPartManager 控件的引用。Gets a reference to the WebPartManager control associated with the current Web page.

(继承自 EditorPart)
WebPartToEdit

获取对当前正在编辑的 WebPart 控件的引用。Gets a reference to the WebPart control that is currently being edited.

(继承自 EditorPart)
Width

获取或设置 Web 服务器控件的宽度。Gets or sets the width of the Web server control.

(继承自 WebControl)
Wrap

获取或设置一个指示面板中的内容是否换行的值。Gets or sets a value indicating whether the content wraps within the panel.

(继承自 Panel)
Zone

获取对包含 EditorZoneBase 控件的 EditorPart 区域的引用。Gets a reference to the EditorZoneBase zone that contains an EditorPart control.

(继承自 EditorPart)

方法

AddAttributesToRender(HtmlTextWriter)

将有关背景图像、对齐方式、换行和方向的信息添加到特性列表以进行呈现。Adds information about the background image, alignment, wrap, and direction to the list of attributes to render.

(继承自 Panel)
AddedControl(Control, Int32)

在子控件添加到 Control 对象的 Controls 集合后调用。Called after a child control is added to the Controls collection of the Control object.

(继承自 Control)
AddParsedSubObject(Object)

通知服务器控件,分析了一个元素(XML 或 HTML),并将该元素添加到服务器控件的 ControlCollection 对象中。Notifies the server control that an element, either XML or HTML, was parsed, and adds the element to the server control's ControlCollection object.

(继承自 Control)
ApplyChanges()

PropertyGridEditorPart 控件的值保存到关联 WebPart 控件的相应属性。Saves the values from a PropertyGridEditorPart control to the corresponding properties in the associated WebPart control.

ApplyStyle(Style)

将指定样式的所有非空白元素复制到 Web 控件,覆盖控件的所有现有的样式元素。Copies any nonblank elements of the specified style to the Web control, overwriting any existing style elements of the control. 此方法主要由控件开发人员使用。This method is primarily used by control developers.

(继承自 WebControl)
ApplyStyleSheetSkin(Page)

将页样式表中定义的样式属性应用到控件。Applies the style properties defined in the page style sheet to the control.

(继承自 Control)
BeginRenderTracing(TextWriter, Object)

开始输出数据的设计时追踪。Begins design-time tracing of rendering data.

(继承自 Control)
BuildProfileTree(String, Boolean)

收集有关服务器控件的信息并将该信息发送到 Trace 属性,在启用页的跟踪功能时将显示该属性。Gathers information about the server control and delivers it to the Trace property to be displayed when tracing is enabled for the page.

(继承自 Control)
ClearCachedClientID()

将缓存的 ClientID 值设置为 nullSets the cached ClientID value to null.

(继承自 Control)
ClearChildControlState()

删除服务器控件的子控件的控件状态信息。Deletes the control-state information for the server control's child controls.

(继承自 Control)
ClearChildState()

删除服务器控件的所有子控件的视图状态和控件状态信息。Deletes the view-state and control-state information for all the server control's child controls.

(继承自 Control)
ClearChildViewState()

删除服务器控件的所有子控件的视图状态信息。Deletes the view-state information for all the server control's child controls.

(继承自 Control)
ClearEffectiveClientIDMode()

将当前控件实例和任何子控件的 ClientIDMode 属性设置为 InheritSets the ClientIDMode property of the current control instance and of any child controls to Inherit.

(继承自 Control)
CopyBaseAttributes(WebControl)

Style 对象未封装的属性从指定的 Web 服务器控件复制到从中调用此方法的 Web 服务器控件。Copies the properties not encapsulated by the Style object from the specified Web server control to the Web server control that this method is called from. 此方法主要由控件开发人员使用。This method is used primarily by control developers.

(继承自 WebControl)
CreateChildControls()

由 ASP.NET 页框架调用,以通知服务器控件在准备回发或呈现时使用基于撰写的实现来创建其所包含任何子控件。Called by the ASP.NET page framework to notify server controls that use composition-based implementation to create any child controls they contain in preparation for posting back or rendering.

(继承自 Control)
CreateControlCollection()

创建一个新 ControlCollection 对象来保存服务器控件的子控件(包括文本控件和服务器控件)。Creates a new ControlCollection object to hold the child controls (both literal and server) of the server control.

(继承自 Control)
CreateControlStyle()

创建由 Panel 控件在内部用来实现所有与样式有关的属性的样式对象。Creates a style object that is used internally by the Panel control to implement all style related properties.

(继承自 Panel)
DataBind()

将数据源绑定到调用的服务器控件及其所有子控件。Binds a data source to the invoked server control and all its child controls.

(继承自 Part)
DataBind(Boolean)

将数据源绑定到调用的服务器控件及其所有子控件,同时可以选择引发 DataBinding 事件。Binds a data source to the invoked server control and all its child controls with an option to raise the DataBinding event.

(继承自 Control)
DataBindChildren()

将数据源绑定到服务器控件的子控件。Binds a data source to the server control's child controls.

(继承自 Control)
Dispose()

使服务器控件得以在从内存中释放之前执行最后的清理操作。Enables a server control to perform final clean up before it is released from memory.

(继承自 Control)
EndRenderTracing(TextWriter, Object)

结束输出数据的设计时追踪。Ends design-time tracing of rendering data.

(继承自 Control)
EnsureChildControls()

确定服务器控件是否包含子控件。Determines whether the server control contains child controls. 如果不包含,则创建子控件。If it does not, it creates child controls.

(继承自 Control)
EnsureID()

为尚未分配标识符的控件创建标识符。Creates an identifier for controls that do not have an identifier assigned.

(继承自 Control)
Equals(Object)

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

(继承自 Object)
FindControl(String)

在当前的命名容器中搜索带指定 id 参数的服务器控件。Searches the current naming container for a server control with the specified id parameter.

(继承自 Control)
FindControl(String, Int32)

使用指定的 idpathOffset 参数(该参数有助于搜索)中指定的整数在当前命名容器中搜索服务器控件。Searches the current naming container for a server control with the specified id and an integer, specified in the pathOffset parameter, which aids in the search. 不应重写此版本的 FindControl 方法。You should not override this version of the FindControl method.

(继承自 Control)
Focus()

为控件设置输入焦点。Sets input focus to a control.

(继承自 Control)
GetDesignModeState()

检索 EditorPart 控件的父区域的当前状态。Retrieves the current state of an EditorPart control's parent zone.

(继承自 EditorPart)
GetHashCode()

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

(继承自 Object)
GetRouteUrl(Object)

获取与一组路由参数对应的 URL。Gets the URL that corresponds to a set of route parameters.

(继承自 Control)
GetRouteUrl(RouteValueDictionary)

获取与一组路由参数对应的 URL。Gets the URL that corresponds to a set of route parameters.

(继承自 Control)
GetRouteUrl(String, Object)

获取与一组路由参数以及某个路由名称对应的 URL。Gets the URL that corresponds to a set of route parameters and a route name.

(继承自 Control)
GetRouteUrl(String, RouteValueDictionary)

获取与一组路由参数以及某个路由名称对应的 URL。Gets the URL that corresponds to a set of route parameters and a route name.

(继承自 Control)
GetType()

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

(继承自 Object)
GetUniqueIDRelativeTo(Control)

返回指定控件的 UniqueID 属性的前缀部分。Returns the prefixed portion of the UniqueID property of the specified control.

(继承自 Control)
HasControls()

确定服务器控件是否包含任何子控件。Determines if the server control contains any child controls.

(继承自 Control)
HasEvents()

返回一个值,该值指示是否为控件或任何子控件注册事件。Returns a value indicating whether events are registered for the control or any child controls.

(继承自 Control)
IsLiteralContent()

确定服务器控件是否只包含文字内容。Determines if the server control holds only literal content.

(继承自 Control)
LoadControlState(Object)

SaveControlState() 方法保存的上一个页请求还原控件状态信息。Restores control-state information from a previous page request that was saved by the SaveControlState() method.

(继承自 Control)
LoadViewState(Object)

从使用 SaveViewState() 方法保存的前一请求还原视图状态信息。Restores view-state information from a previous request that was saved with the SaveViewState() method.

(继承自 WebControl)
MapPathSecure(String)

检索虚拟路径(绝对的或相对的)映射到的物理路径。Retrieves the physical path that a virtual path, either absolute or relative, maps to.

(继承自 Control)
MemberwiseClone()

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

(继承自 Object)
MergeStyle(Style)

将指定样式的所有非空白元素复制到 Web 控件,但不覆盖该控件现有的任何样式元素。Copies any nonblank elements of the specified style to the Web control, but will not overwrite any existing style elements of the control. 此方法主要由控件开发人员使用。This method is used primarily by control developers.

(继承自 WebControl)
OnBubbleEvent(Object, EventArgs)

确定服务器控件的事件是否沿页的 UI 服务器控件层次结构向上传递。Determines whether the event for the server control is passed up the page's UI server control hierarchy.

(继承自 Control)
OnDataBinding(EventArgs)

引发 DataBinding 事件。Raises the DataBinding event.

(继承自 Control)
OnInit(EventArgs)

引发 Init 事件。Raises the Init event.

(继承自 Control)
OnLoad(EventArgs)

引发 Load 事件。Raises the Load event.

(继承自 Control)
OnPreRender(EventArgs)

引发 PreRender 事件。Raises the PreRender event.

(继承自 EditorPart)
OnUnload(EventArgs)

引发 Unload 事件。Raises the Unload event.

(继承自 Control)
OpenFile(String)

获取用于读取文件的 StreamGets a Stream used to read a file.

(继承自 Control)
RaiseBubbleEvent(Object, EventArgs)

将所有事件源及其信息分配给控件的父级。Assigns any sources of the event and its information to the control's parent.

(继承自 Control)
RemovedControl(Control)

Control 对象的 Controls 集合移除子控件后调用。Called after a child control is removed from the Controls collection of the Control object.

(继承自 Control)
Render(HtmlTextWriter)

将控件呈现给指定的 HTML 编写器。Renders the control to the specified HTML writer.

(继承自 WebControl)
RenderBeginTag(HtmlTextWriter)

Panel 控件的 HTML 开始标记呈现到指定的编写器中。Renders the HTML opening tag of the Panel control to the specified writer.

(继承自 Panel)
RenderChildren(HtmlTextWriter)

将服务器控件子级的内容输出到提供的 HtmlTextWriter 对象,该对象可写入要在客户端上呈现的内容。Outputs the content of a server control's children to a provided HtmlTextWriter object, which writes the content to be rendered on the client.

(继承自 Control)
RenderContents(HtmlTextWriter)

将控件的内容呈现到指定的编写器中。Renders the contents of the control to the specified writer. 此方法主要由控件开发人员使用。This method is used primarily by control developers.

(继承自 WebControl)
RenderControl(HtmlTextWriter)

将服务器控件内容输出到所提供的 HtmlTextWriter 对象,如果启用了跟踪,则还将存储有关该控件的跟踪信息。Outputs server control content to a provided HtmlTextWriter object and stores tracing information about the control if tracing is enabled.

(继承自 Control)
RenderControl(HtmlTextWriter, ControlAdapter)

使用提供的 HtmlTextWriter 对象将服务器控件内容输出到提供的 ControlAdapter 对象。Outputs server control content to a provided HtmlTextWriter object using a provided ControlAdapter object.

(继承自 Control)
RenderEndTag(HtmlTextWriter)

Panel 控件的 HTML 结束标记呈现到指定的编写器中。Renders the HTML closing tag of the Panel control into the specified writer.

(继承自 Panel)
ResolveAdapter()

获取负责呈现指定控件的控件适配器。Gets the control adapter responsible for rendering the specified control.

(继承自 Control)
ResolveClientUrl(String)

获取浏览器可以使用的 URL。Gets a URL that can be used by the browser.

(继承自 Control)
ResolveUrl(String)

将 URL 转换为在请求客户端可用的 URL。Converts a URL into one that is usable on the requesting client.

(继承自 Control)
SaveControlState()

保存将页面回发到服务器之后发生的所有服务器控件状态更改。Saves any server control state changes that have occurred since the time the page was posted back to the server.

(继承自 Control)
SaveViewState()

保存调用 TrackViewState() 方法后修改的任何状态。Saves any state that was modified after the TrackViewState() method was invoked.

(继承自 WebControl)
SetDesignModeState(IDictionary)

将设计模式状态的特性应用于包含 EditorZoneBase 控件的当前 EditorPart 区域。Applies the characteristics of the design-mode state to the current EditorZoneBase zone that contains an EditorPart control.

(继承自 EditorPart)
SetRenderMethodDelegate(RenderMethod)

分配事件处理程序委托,以将服务器控件及其内容呈现到父控件中。Assigns an event handler delegate to render the server control and its content into its parent control.

(继承自 Control)
SetTraceData(Object, Object)

使用跟踪数据键和跟踪数据值,为呈现数据的设计时追踪设置跟踪数据。Sets trace data for design-time tracing of rendering data, using the trace data key and the trace data value.

(继承自 Control)
SetTraceData(Object, Object, Object)

使用跟踪对象、跟踪数据键和跟踪数据值,为呈现数据的设计时追踪设置跟踪数据。Sets trace data for design-time tracing of rendering data, using the traced object, the trace data key, and the trace data value.

(继承自 Control)
SyncChanges()

检索 WebPart 控件的值,并更新 PropertyGridEditorPart 控件中用于编辑这些属性值的相应控件。Retrieves the values from a WebPart control, and updates the corresponding controls used to edit those property values within a PropertyGridEditorPart control.

ToString()

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

(继承自 Object)
TrackViewState()

使控件跟踪其视图状态的更改,以便将这些更改存储在对象的 ViewState 属性中。Causes the control to track changes to its view state so they can be stored in the object's ViewState property.

(继承自 WebControl)

事件

DataBinding

当服务器控件绑定到数据源时发生。Occurs when the server control binds to a data source.

(继承自 Control)
Disposed

当从内存释放服务器控件时发生,这是请求 ASP.NET 页时服务器控件生存期的最后阶段。Occurs when a server control is released from memory, which is the last stage of the server control lifecycle when an ASP.NET page is requested.

(继承自 Control)
Init

当服务器控件初始化时发生;初始化是控件生存期的第一步。Occurs when the server control is initialized, which is the first step in its lifecycle.

(继承自 Control)
Load

当服务器控件加载到 Page 对象中时发生。Occurs when the server control is loaded into the Page object.

(继承自 Control)
PreRender

在加载 Control 对象之后、呈现之前发生。Occurs after the Control object is loaded but prior to rendering.

(继承自 Control)
Unload

当服务器控件从内存中卸载时发生。Occurs when the server control is unloaded from memory.

(继承自 Control)

显式接口实现

IAttributeAccessor.GetAttribute(String)

获取具有指定名称的 Web 控件的特性。Gets an attribute of the Web control with the specified name.

(继承自 WebControl)
IAttributeAccessor.SetAttribute(String, String)

将 Web 控件的特性设置为指定的名称和值。Sets an attribute of the Web control to the specified name and value.

(继承自 WebControl)
ICompositeControlDesignerAccessor.RecreateChildControls()

允许复合部件控件设计器的开发人员在设计图面上重新创建控件的子控件。Allows the developer of a designer for a composite part control to recreate the control's child controls on the design surface.

(继承自 Part)
IControlBuilderAccessor.ControlBuilder

有关此成员的说明,请参见 ControlBuilderFor a description of this member, see ControlBuilder.

(继承自 Control)
IControlDesignerAccessor.GetDesignModeState()

有关此成员的说明,请参见 GetDesignModeState()For a description of this member, see GetDesignModeState().

(继承自 Control)
IControlDesignerAccessor.SetDesignModeState(IDictionary)

有关此成员的说明,请参见 SetDesignModeState(IDictionary)For a description of this member, see SetDesignModeState(IDictionary).

(继承自 Control)
IControlDesignerAccessor.SetOwnerControl(Control)

有关此成员的说明,请参见 SetOwnerControl(Control)For a description of this member, see SetOwnerControl(Control).

(继承自 Control)
IControlDesignerAccessor.UserData

有关此成员的说明,请参见 UserDataFor a description of this member, see UserData.

(继承自 Control)
IDataBindingsAccessor.DataBindings

有关此成员的说明,请参见 DataBindingsFor a description of this member, see DataBindings.

(继承自 Control)
IDataBindingsAccessor.HasDataBindings

有关此成员的说明,请参见 HasDataBindingsFor a description of this member, see HasDataBindings.

(继承自 Control)
IExpressionsAccessor.Expressions

有关此成员的说明,请参见 ExpressionsFor a description of this member, see Expressions.

(继承自 Control)
IExpressionsAccessor.HasExpressions

有关此成员的说明,请参见 HasExpressionsFor a description of this member, see HasExpressions.

(继承自 Control)
IParserAccessor.AddParsedSubObject(Object)

有关此成员的说明,请参见 AddParsedSubObject(Object)For a description of this member, see AddParsedSubObject(Object).

(继承自 Control)

扩展方法

FindDataSourceControl(Control)

返回与指定控件的数据控件关联的数据源。Returns the data source that is associated with the data control for the specified control.

FindFieldTemplate(Control, String)

返回指定控件的命名容器中指定列的字段模板。Returns the field template for the specified column in the specified control's naming container.

FindMetaTable(Control)

返回包含数据控件的元表对象。Returns the metatable object for the containing data control.

GetDefaultValues(INamingContainer)

为指定数据控件获取默认值的集合。Gets the collection of the default values for the specified data control.

GetMetaTable(INamingContainer)

为指定数据控件获取表元数据。Gets the table metadata for the specified data control.

SetMetaTable(INamingContainer, MetaTable)

为指定数据控件设置表元数据。Sets the table metadata for the specified data control.

SetMetaTable(INamingContainer, MetaTable, IDictionary<String,Object>)

为指定数据控件设置表元数据和默认值映射。Sets the table metadata and default value mapping for the specified data control.

SetMetaTable(INamingContainer, MetaTable, Object)

为指定数据控件设置表元数据和默认值映射。Sets the table metadata and default value mapping for the specified data control.

TryGetMetaTable(INamingContainer, MetaTable)

确定表元数据是否可用。Determines whether table metadata is available.

EnableDynamicData(INamingContainer, Type)

为指定数据控件启用动态数据行为。Enables Dynamic Data behavior for the specified data control.

EnableDynamicData(INamingContainer, Type, IDictionary<String,Object>)

为指定数据控件启用动态数据行为。Enables Dynamic Data behavior for the specified data control.

EnableDynamicData(INamingContainer, Type, Object)

为指定数据控件启用动态数据行为。Enables Dynamic Data behavior for the specified data control.

适用于

另请参阅