BehaviorEditorPart 类

定义

提供一个编辑器控件,最终用户使用该控件可以编辑关联 WebPart 控件的几个用户界面 (UI) 属性。 此类不能被继承。

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

示例

下面的代码示例演示如何在网页上声明 BehaviorEditorPart 控件,并使该控件能够编辑控件的 WebPart 多个 UI 属性。 该代码示例包含四个部分:

  • 一个用户控件,可用于更改 Web 部件页上的显示模式。

  • 包含 EditorZone 控件和 BehaviorEditorPart 控件的网页,用于编辑控件的行为属性 BulletedList

  • 在 Web.config 文件中的一个条目,用于授予授权用户在共享个性化范围内编辑页面的权限。

  • 说明在浏览器中加载页面时示例的工作原理。

此代码示例的第一部分是用户控件,使用户能够更改网页上的显示模式。 有关此控件中的显示模式和源代码说明的详细信息,请参阅 演练:更改 Web 部件页上的显示模式。 此用户控件的文档介绍了如何调用 ToggleScope 方法以将页面切换到共享模式,以便显示控件 BehaviorEditorPart

<%@ control language="C#" classname="DisplayModeMenuCS"%>
<script runat="server">
  
 // Use a field to reference the current WebPartManager.
  WebPartManager _manager;

  void Page_Init(object sender, EventArgs e)
  {
    Page.InitComplete += new EventHandler(InitComplete);
  }  

  void InitComplete(object sender, System.EventArgs e)
  {
    _manager = WebPartManager.GetCurrentWebPartManager(Page);

    String browseModeName = WebPartManager.BrowseDisplayMode.Name;

    // Fill the dropdown with the names of supported display modes.
    foreach (WebPartDisplayMode mode in _manager.SupportedDisplayModes)
    {
      String modeName = mode.Name;
      // Make sure a mode is enabled before adding it.
      if (mode.IsEnabled(_manager))
      {
        ListItem item = new ListItem(modeName, modeName);
        DisplayModeDropdown.Items.Add(item);
      }
    }

    // If shared scope is allowed for this user, display the scope-switching
    // UI and select the appropriate radio button for the current user scope.
    if (_manager.Personalization.CanEnterSharedScope)
    {
      Panel2.Visible = true;
      if (_manager.Personalization.Scope == PersonalizationScope.User)
        RadioButton1.Checked = true;
      else
        RadioButton2.Checked = true;
    }
    
  }
 
  // Change the page to the selected display mode.
  void DisplayModeDropdown_SelectedIndexChanged(object sender, EventArgs e)
  {
    String selectedMode = DisplayModeDropdown.SelectedValue;

    WebPartDisplayMode mode = _manager.SupportedDisplayModes[selectedMode];
    if (mode != null)
      _manager.DisplayMode = mode;
  }

  // Set the selected item equal to the current display mode.
  void Page_PreRender(object sender, EventArgs e)
  {
    ListItemCollection items = DisplayModeDropdown.Items;
    int selectedIndex = 
      items.IndexOf(items.FindByText(_manager.DisplayMode.Name));
    DisplayModeDropdown.SelectedIndex = selectedIndex;
  }

  // Reset all of a user's personalization data for the page.
  protected void LinkButton1_Click(object sender, EventArgs e)
  {
    _manager.Personalization.ResetPersonalizationState();
  }

  // If not in User personalization scope, toggle into it.
  protected void RadioButton1_CheckedChanged(object sender, EventArgs e)
  {
    if (_manager.Personalization.Scope == PersonalizationScope.Shared)
      _manager.Personalization.ToggleScope();
  }

  // If not in Shared scope, and if user is allowed, toggle the scope.
  protected void RadioButton2_CheckedChanged(object sender, EventArgs e)
  {
    if (_manager.Personalization.CanEnterSharedScope && 
        _manager.Personalization.Scope == PersonalizationScope.User)
      _manager.Personalization.ToggleScope();
  }
</script>
<div>
  <asp:Panel ID="Panel1" runat="server" 
    Borderwidth="1" 
    Width="230" 
    BackColor="lightgray"
    Font-Names="Verdana, Arial, Sans Serif" >
    <asp:Label ID="Label1" runat="server" 
      Text="&nbsp;Display Mode" 
      Font-Bold="true"
      Font-Size="8"
      Width="120" 
      AssociatedControlID="DisplayModeDropdown"/>
    <asp:DropDownList ID="DisplayModeDropdown" runat="server"  
      AutoPostBack="true" 
      Width="120"
      OnSelectedIndexChanged="DisplayModeDropdown_SelectedIndexChanged" />
    <asp:LinkButton ID="LinkButton1" runat="server"
      Text="Reset User State" 
      ToolTip="Reset the current user's personalization data for the page."
      Font-Size="8" 
      OnClick="LinkButton1_Click" />
    <asp:Panel ID="Panel2" runat="server" 
      GroupingText="Personalization Scope"
      Font-Bold="true"
      Font-Size="8" 
      Visible="false" >
      <asp:RadioButton ID="RadioButton1" runat="server" 
        Text="User" 
        AutoPostBack="true"
        GroupName="Scope" OnCheckedChanged="RadioButton1_CheckedChanged" />
      <asp:RadioButton ID="RadioButton2" runat="server" 
        Text="Shared" 
        AutoPostBack="true"
        GroupName="Scope" 
        OnCheckedChanged="RadioButton2_CheckedChanged" />
    </asp:Panel>
  </asp:Panel>
</div>
<%@ control language="vb" classname="DisplayModeMenuVB"%>
<script runat="server">
  ' Use a field to reference the current WebPartManager.
  Dim _manager As WebPartManager

  Sub Page_Init(ByVal sender As Object, ByVal e As EventArgs)
    AddHandler Page.InitComplete, AddressOf InitComplete
  End Sub

  Sub InitComplete(ByVal sender As Object, ByVal e As System.EventArgs)
    _manager = WebPartManager.GetCurrentWebPartManager(Page)
      
    Dim browseModeName As String = WebPartManager.BrowseDisplayMode.Name
      
    ' Fill the dropdown with the names of supported display modes.
    Dim mode As WebPartDisplayMode
    For Each mode In _manager.SupportedDisplayModes
      Dim modeName As String = mode.Name
      ' Make sure a mode is enabled before adding it.
      If mode.IsEnabled(_manager) Then
        Dim item As New ListItem(modeName, modeName)
        DisplayModeDropdown.Items.Add(item)
      End If
    Next mode
      
    ' If shared scope is allowed for this user, display the scope-switching
    ' UI and select the appropriate radio button for the current user scope.
    If _manager.Personalization.CanEnterSharedScope Then
      Panel2.Visible = True
      If _manager.Personalization.Scope = PersonalizationScope.User Then
        RadioButton1.Checked = True
      Else
        RadioButton2.Checked = True
      End If
    End If
   
  End Sub

  ' Change the page to the selected display mode.
  Sub DisplayModeDropdown_SelectedIndexChanged(ByVal sender As Object, _
    ByVal e As EventArgs)
    
    Dim selectedMode As String = DisplayModeDropdown.SelectedValue   
    Dim mode As WebPartDisplayMode = _
      _manager.SupportedDisplayModes(selectedMode)
    If Not (mode Is Nothing) Then
      _manager.DisplayMode = mode
    End If

  End Sub
   
  ' Set the selected item equal to the current display mode.
  Sub Page_PreRender(ByVal sender As Object, ByVal e As EventArgs)
    Dim items As ListItemCollection = DisplayModeDropdown.Items
    Dim selectedIndex As Integer = _
      items.IndexOf(items.FindByText(_manager.DisplayMode.Name))
    DisplayModeDropdown.SelectedIndex = selectedIndex

  End Sub

  ' Reset all of a user's personalization data for the page.
  Protected Sub LinkButton1_Click(ByVal sender As Object, _
    ByVal e As EventArgs)
    
    _manager.Personalization.ResetPersonalizationState()
    
  End Sub

  ' If not in User personalization scope, toggle into it.
  Protected Sub RadioButton1_CheckedChanged(ByVal sender As Object, _
    ByVal e As EventArgs)
    
    If _manager.Personalization.Scope = PersonalizationScope.Shared Then
      _manager.Personalization.ToggleScope()
    End If

  End Sub
   
  ' If not in Shared scope, and if user is allowed, toggle the scope.
  Protected Sub RadioButton2_CheckedChanged(ByVal sender As Object, _
    ByVal e As EventArgs)
    
    If _manager.Personalization.CanEnterSharedScope AndAlso _
      _manager.Personalization.Scope = PersonalizationScope.User Then
      _manager.Personalization.ToggleScope()
    End If

  End Sub

</script>
<div>
  <asp:Panel ID="Panel1" runat="server" 
    Borderwidth="1" 
    Width="230" 
    BackColor="lightgray"
    Font-Names="Verdana, Arial, Sans Serif" >
    <asp:Label ID="Label1" runat="server" 
      Text="&nbsp;Display Mode" 
      Font-Bold="true"
      Font-Size="8"
      Width="120" 
      AssociatedControlID="DisplayModeDropdown"/>
    <asp:DropDownList ID="DisplayModeDropdown" runat="server"  
      AutoPostBack="true" 
      Width="120"
      OnSelectedIndexChanged="DisplayModeDropdown_SelectedIndexChanged" />
    <asp:LinkButton ID="LinkButton1" runat="server"
      Text="Reset User State" 
      ToolTip="Reset the current user's personalization data for the page."
      Font-Size="8" 
      OnClick="LinkButton1_Click" />
    <asp:Panel ID="Panel2" runat="server" 
      GroupingText="Personalization Scope"
      Font-Bold="true"
      Font-Size="8" 
      Visible="false" >
      <asp:RadioButton ID="RadioButton1" runat="server" 
        Text="User" 
        AutoPostBack="true"
        GroupName="Scope" OnCheckedChanged="RadioButton1_CheckedChanged" />
      <asp:RadioButton ID="RadioButton2" runat="server" 
        Text="Shared" 
        AutoPostBack="true"
        GroupName="Scope" 
        OnCheckedChanged="RadioButton2_CheckedChanged" />
    </asp:Panel>
  </asp:Panel>
</div>

代码示例的第二部分是网页。 它包含对控件的EditorZone声明性引用,以及包含对控件的声明性引用的BehaviorEditorPart<zonetemplate>元素。 请注意,该页还包含绑定到 BulletedList Pubs 数据库的控件;由于此控件驻留在 中 WebPartZone,因此它能够充当 WebPart 控件可编辑的 BehaviorEditorPart 控件。

重要

此示例具有一个接受用户输入的文本框,这是一个潜在的安全威胁。 默认情况下,ASP.NET 网页验证用户输入是否不包含脚本或 HTML 元素。 有关详细信息,请参阅脚本侵入概述

<%@ Page Language="C#" %>
<%@ Register Src="~/displayModeMenuCS.ascx" 
  TagPrefix="uc1" 
  TagName="DisplayModeMenuCS" %>

<!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;
    BulletedList1.DataBind();
  }

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

  // <snippet4>
  protected void BehaviorEditorPart1_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>ASP.NET Example</title>
</head>
<body>
  <form id="form1" runat="server">
    <!-- This example uses Microsoft SQL Server and connects    -->
    <!-- to the Pubs sample database. Use an ASP.NET expression -->
    <!-- like the one in the following control to retrieve the  -->
    <!-- connection string value from the Web.config file.      -->
    <asp:SqlDataSource ID="ds1" runat="server" 
      connectionString="<%$ ConnectionStrings:PubsConnection %>" 
      SelectCommand="Select au_id, au_lname, au_fname From Authors"/>
    <asp:WebPartManager ID="WebPartManager1" runat="server" />
    <uc1:DisplayModeMenuCS id="menu1" runat="server" />
    <asp:WebPartZone ID="WebPartZone1" runat="server" Width="150" 
      style="z-index: 100; left: 10px; position: absolute; top: 90px" >
      <ZoneTemplate>
        <asp:Panel ID="panel1" runat="server" ToolTip="Author List WebPart">
          <asp:Label ID="Label1" runat="server" 
            Text="Author Names" 
            Font-Bold="true" 
            Font-Size="120%"
            AssociatedControlID="BulletedList1"/>
          <asp:BulletedList ID="BulletedList1" runat="server" 
            DataSourceID="ds1" 
            DataTextField="au_lname" 
            DataValueField="au_id"/>
        </asp:Panel>
      </ZoneTemplate>
    </asp:WebPartZone>
    <asp:WebPartZone ID="WebPartZone2" runat="server" Width="150" 
      style="z-index: 101; left: 170px; position: absolute; top: 90px" />
    <asp:EditorZone ID="EditorZone1" runat="server" 
      style="z-index: 102; left: 340px; position: absolute; top: 90px" 
      Width="170px">
      <ZoneTemplate>
        <asp:BehaviorEditorPart ID="BehaviorEditorPart1" runat="server" 
          Title="My BehaviorEditorPart"  
          OnPreRender="BehaviorEditorPart1_PreRender" />
      </ZoneTemplate>
    </asp:EditorZone>
    <asp:Button ID="Button1" runat="server" Width="140" 
      Text="Update EditorPart Title" 
      style="left: 340px; position: absolute; top: 65px; z-index: 103;" 
      OnClick="Button1_Click" />
    <asp:TextBox ID="TextBox1" runat="server" 
      style="z-index: 105; left: 500px; position: absolute; top: 65px" />
  </form>
</body>
</html>
<%@ Page Language="VB" %>
<%@ Register Src="~/displayModeMenuVB.ascx" 
  TagPrefix="uc1" 
  TagName="DisplayModeMenuVB" %>

<!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
    BulletedList1.DataBind()
  End Sub

  ' <snippet3>
  Protected Sub Button1_Click(ByVal sender As Object, _
    ByVal e As System.EventArgs)
    BehaviorEditorPart1.Title = Server.HtmlEncode(TextBox1.Text)
  End Sub
  ' </snippet3>

  ' <snippet4>
  Protected Sub BehaviorEditorPart1_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 runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
  <form id="form1" runat="server">
    <!-- This example uses Microsoft SQL Server and connects    -->
    <!-- to the Pubs sample database. Use an ASP.NET expression -->
    <!-- like the one in the following control to retrieve the  -->
    <!-- connection string value from the Web.config file.      -->
    <asp:SqlDataSource ID="ds1" runat="server" 
      connectionString="<%$ ConnectionStrings:PubsConnection %>" 
      SelectCommand="Select au_id, au_lname, au_fname From Authors"/>
    <asp:WebPartManager ID="WebPartManager1" runat="server" />
    <uc1:DisplayModeMenuVB id="menu1" runat="server" />
    <asp:WebPartZone ID="WebPartZone1" runat="server" Width="150" 
      style="z-index: 100; left: 10px; position: absolute; top: 90px" >
      <ZoneTemplate>
        <asp:Panel ID="panel1" runat="server" ToolTip="Author List WebPart">
          <asp:Label ID="Label1" runat="server" 
            Text="Author Names" 
            Font-Bold="true" 
            Font-Size="120%"
            AssociatedControlID="BulletedList1"/>
          <asp:BulletedList ID="BulletedList1" runat="server" 
            DataSourceID="ds1" 
            DataTextField="au_lname" 
            DataValueField="au_id"/>
        </asp:Panel>
      </ZoneTemplate>
    </asp:WebPartZone>
    <asp:WebPartZone ID="WebPartZone2" runat="server" Width="150" 
      style="z-index: 101; left: 170px; position: absolute; top: 90px" />
    <asp:EditorZone ID="EditorZone1" runat="server" 
      style="z-index: 102; left: 340px; position: absolute; top: 90px" 
      Width="170px">
      <ZoneTemplate>
        <asp:BehaviorEditorPart ID="BehaviorEditorPart1" runat="server" 
          Title="My BehaviorEditorPart"  
          OnPreRender="BehaviorEditorPart1_PreRender" />
      </ZoneTemplate>
    </asp:EditorZone>
    <asp:Button ID="Button1" runat="server" Width="140" 
      Text="Update EditorPart Title" 
      style="left: 340px; position: absolute; top: 65px; z-index: 103;" 
      OnClick="Button1_Click" />
    <asp:TextBox ID="TextBox1" runat="server" 
      style="z-index: 105; left: 500px; position: absolute; top: 65px" />
  </form>
</body>
</html>

本示例的第三部分是 Web.config 文件中的一个条目。 必须在文件的 部分创建如下所示 <webParts> 的条目,以使授权用户或一组用户能够在网页处于共享个性化设置范围时编辑网页。 此条目是一个关键步骤;否则,将 BehaviorEditorPart 页面切换到编辑模式时,控件将不可见。

<webParts>

<personalization>

<authorization>

<allow users="User_account" roles="admin"

verbs="enterSharedScope"/>

</authorization>

</personalization>

</webParts>

在浏览器中加载页面时,可以先选择“显示模式”下拉列表控件上的“共享”选项。 接下来,单击下拉列表本身,然后选择 “编辑模式” ,将页面切换到编辑模式。 可以单击“ 创作列表 WebPart” 控件标题栏中) 下箭头 (谓词菜单,然后单击“ 编辑 ”开始编辑。 当编辑 UI 可见时,你可以看到 BehaviorEditorPart 控件,以及位于其上方的按钮和文本框。 如果在编辑 UI 中进行了一些更改并单击“ 应用 ”按钮,则可以使用 “显示模式 ”下拉列表控件将页面返回到浏览模式,并查看编辑更改的完整效果。

注解

BehaviorEditorPart 是派生自 类的 EditorPart 编辑器控件,用于编辑影响关联 WebPartGenericWebPart 控件行为的属性。

正如 Web 部件控件集中有面向工具的区域 (,有关详细信息,请参阅 ToolZone 类概述) ,有面向工具的部件控件 (工具部件) ,并且每个工具部件必须驻留在某种类型的工具区域中。 Web 部件控件集中的工具部件有两个显著特征:

  • 它们是帮助程序控件,最终用户可对 Web 部件页上的控件进行个性化设置。

  • 它们仅在某些显示模式下可见。

控件 BehaviorEditorPart 是一个工具部件,仅当 Web 部件页面处于编辑模式时,并且已选择特定 WebPart 控件进行编辑时,它才可见。 与所有其他EditorPart控件一样,控件BehaviorEditorPart驻留在 控件EditorZone中。

重要

区域 EditorZone 只能 EditorPart 包含控件,并且 EditorPart 控件不能放置在任何其他类型的区域中。

在某些情况下,控件不会显示在页面上。 IsShared如果要编辑的WebPart控件的属性值为 true,并且页面处于用户个性化设置范围 (这是默认) ,则不显示控件。 BehaviorEditorPart若要在此方案中显示控件,通常需要执行两个步骤:

  • 向Web.config文件添加一个条目,该条目授予授权用户在共享个性化设置范围内编辑网页的权限 (这意味着用户所做的更改将对应用程序) 的所有用户可见。

  • 以编程方式在运行时将页面从用户级别更改为共享级别个性化设置范围,例如使用 ToggleScope 方法。

有关如何使 BehaviorEditorPart 控件在页面中可见的示例,请参阅本主题的示例部分。 有关共享控件和个性化设置范围的详细信息,请参阅 Web 部件个性化概述

BehaviorEditorPart 还有一个重要方法 , SyncChanges它继承自 EditorPart 类并重写。 方法至关重要,因为它允许从正在编辑的 WebPart 控件中获取属性值并将其分配给编辑控件的字段。

在大多数情况下,BehaviorEditorPart控件应通过在 元素内<zonetemplate>声明<asp:behavioreditorpart>元素(而该元素又包含在<asp:editorzone>网页上的 元素中)来以页面持久性格式使用。 控件 BehaviorEditorPart 使最终用户能够编辑控件的 WebPart 以下 UI 属性:

若要编辑控件的其他属性和行为 WebPart ,可以使用 Web 部件控件集提供的其他 EditorPart 控件。 这些控件包括 LayoutEditorPartAppearanceEditorPartPropertyGridEditorPart 控件。 提供的 EditorPart 控件应提供编辑 WebPart 控件所需的大多数编辑功能,但你也可以通过从 EditorPart 类继承来创建自定义编辑器控件。 有关代码示例,请参阅 EditorPart 类概述。

注意

为了提高辅助功能,控件 BehaviorEditorPart 在 元素中 <fieldset> 呈现。 元素 <fieldset> 对用于在 控件中 BehaviorEditorPart 编辑的相关控件集进行分组,并方便视觉用户代理 ((如普通 Web 浏览器) )和面向语音的用户代理 ((如屏幕阅读软件) )在这些控件之间进行选项卡式导航。

可访问性

默认情况下为此控件呈现的标记可能不符合辅助功能标准,例如 Web 内容辅助功能指南 1.0 (WCAG) 优先级 1 准则。 有关此控件的辅助功能支持的详细信息,请参阅 ASP.NET 控件和辅助功能

构造函数

BehaviorEditorPart()

创建该类的一个新实例。

属性

AccessKey

获取或设置使您得以快速导航到 Web 服务器控件的访问键。

(继承自 WebControl)
Adapter

获取控件的浏览器特定适配器。

(继承自 Control)
AppRelativeTemplateSourceDirectory

获取或设置包含该控件的 PageUserControl 对象的应用程序相对虚拟目录。

(继承自 Control)
Attributes

获取与控件的特性不对应的任意特性(只用于呈现)的集合。

(继承自 WebControl)
BackColor

获取或设置 Web 服务器控件的背景色。

(继承自 WebControl)
BackImageUrl

获取或设置面板控件背景图像的 URL。

(继承自 Panel)
BindingContainer

获取包含该控件的数据绑定的控件。

(继承自 Control)
BorderColor

获取或设置 Web 控件的边框颜色。

(继承自 WebControl)
BorderStyle

获取或设置 Web 服务器控件的边框样式。

(继承自 WebControl)
BorderWidth

获取或设置 Web 服务器控件的边框宽度。

(继承自 WebControl)
ChildControlsCreated

获取一个值,该值指示是否已创建服务器控件的子控件。

(继承自 Control)
ChromeState

获取或设置部件控件是处于最小化状态还是正常状态。

(继承自 Part)
ChromeType

获取或设置构成 Web 部件控件的框架的边框类型。

(继承自 Part)
ClientID

获取由 ASP.NET 生成的 HTML 标记的控件 ID。

(继承自 Control)
ClientIDMode

获取或设置用于生成 ClientID 属性值的算法。

(继承自 Control)
ClientIDSeparator

获取一个字符值,该值表示 ClientID 属性中使用的分隔符字符。

(继承自 Control)
Context

为当前 Web 请求获取与服务器控件关联的 HttpContext 对象。

(继承自 Control)
Controls

获取 ControlCollection 对象,该对象包含用户界面层次结构中指定服务器控件的子控件。

(继承自 Part)
ControlStyle

获取 Web 服务器控件的样式。 此属性主要由控件开发人员使用。

(继承自 WebControl)
ControlStyleCreated

获取一个值,该值指示是否已为 Style 属性创建了 ControlStyle 对象。 此属性主要由控件开发人员使用。

(继承自 WebControl)
CssClass

获取或设置由 Web 服务器控件在客户端呈现的级联样式表 (CSS) 类。

(继承自 WebControl)
DataItemContainer

如果命名容器实现 IDataItemContainer,则获取对命名容器的引用。

(继承自 Control)
DataKeysContainer

如果命名容器实现 IDataKeysControl,则获取对命名容器的引用。

(继承自 Control)
DefaultButton

获取或设置控件默认按钮的 ID。

Description

获取或设置一条短语,该短语在部件控件的工具提示和目录中用来概述该部件控件的作用。

(继承自 Part)
DesignMode

获取一个值,该值指示是否正在使用设计图面上的一个控件。

(继承自 Control)
Direction

获取或设置在 Panel 控件中显示包含文本的控件的方向。

(继承自 Panel)
Display

获取一个值,该值指示当某个控件的关联 WebPart 控件在编辑模式下时是否应显示该控件。

DisplayTitle

获取一个字符串,该字符串包含 EditorPart 控件的标题栏中显示的标题文本。

(继承自 EditorPart)
Enabled

获取或设置一个值,该值指示是否启用 Web 服务器控件。

(继承自 WebControl)
EnableTheming

获取或设置一个值,该值指示主题是否应用于该控件。

(继承自 WebControl)
EnableViewState

获取或设置一个值,该值指示服务器控件是否向发出请求的客户端保持自己的视图状态以及它所包含的任何子控件的视图状态。

(继承自 Control)
Events

获取控件的事件处理程序委托列表。 此属性为只读。

(继承自 Control)
Font

获取与 Web 服务器控件关联的字体属性。

(继承自 WebControl)
ForeColor

获取或设置 Web 服务器控件的前景色(通常是文本颜色)。

(继承自 WebControl)
GroupingText

获取或设置面板控件中包含的控件组的标题。

(继承自 Panel)
HasAttributes

获取一个值,该值指示控件是否具有特性集。

(继承自 WebControl)
HasChildViewState

获取一个值,该值指示当前服务器控件的子控件是否具有任何已保存的视图状态设置。

(继承自 Control)
Height

获取或设置 Web 服务器控件的高度。

(继承自 WebControl)
HorizontalAlign

获取或设置面板内容的水平对齐方式。

(继承自 Panel)
ID

获取或设置分配给服务器控件的编程标识符。

(继承自 Control)
IdSeparator

获取用于分隔控件标识符的字符。

(继承自 Control)
IsChildControlStateCleared

获取一个值,该值指示该控件中包含的控件是否具有控件状态。

(继承自 Control)
IsEnabled

获取一个值,该值指示是否启用控件。

(继承自 WebControl)
IsTrackingViewState

获取一个值,用于指示服务器控件是否会将更改保存到其视图状态中。

(继承自 Control)
IsViewStateEnabled

获取一个值,该值指示是否为该控件启用了视图状态。

(继承自 Control)
LoadViewStateByID

获取一个值,该值指示控件是否通过 ID 而不是索引参与加载其视图状态。

(继承自 Control)
NamingContainer

获取对服务器控件的命名容器的引用,此引用创建唯一的命名空间,以区分具有相同 ID 属性值的服务器控件。

(继承自 Control)
Page

获取对包含服务器控件的 Page 实例的引用。

(继承自 Control)
Parent

获取对页 UI 层次结构中服务器控件的父控件的引用。

(继承自 Control)
RenderingCompatibility

获取一个值,该值指定呈现的 HTML 将与之兼容的 ASP.NET 版本。

(继承自 Control)
ScrollBars

获取或设置 Panel 控件中滚动条的可见性和位置。

(继承自 Panel)
Site

获取容器信息,该容器在呈现于设计图面上时承载当前控件。

(继承自 Control)
SkinID

获取或设置要应用于控件的外观。

(继承自 WebControl)
Style

获取将在 Web 服务器控件的外部标记上呈现为样式特性的文本特性的集合。

(继承自 WebControl)
SupportsDisabledAttribute

获取一个值,该值指示在控件的 disabled 属性为 IsEnabled 时,控件是否应将呈现的 HTML 元素的 false 特性设置为 "disabled"。

(继承自 Panel)
TabIndex

获取或设置 Web 服务器控件的选项卡索引。

(继承自 WebControl)
TagKey

获取对应于此 Web 服务器控件的 HtmlTextWriterTag 值。 此属性主要由控件开发人员使用。

(继承自 WebControl)
TagName

获取控件标记的名称。 此属性主要由控件开发人员使用。

(继承自 WebControl)
TemplateControl

获取或设置对包含该控件的模板的引用。

(继承自 Control)
TemplateSourceDirectory

获取包含当前服务器控件的 PageUserControl 的虚拟目录。

(继承自 Control)
Title

获取或设置编辑器控件的标题。

ToolTip

获取或设置当鼠标指针悬停在 Web 服务器控件上时显示的文本。

(继承自 WebControl)
UniqueID

获取服务器控件的唯一的、以分层形式限定的标识符。

(继承自 Control)
ValidateRequestMode

获取或设置指示控件是否检查来自浏览器的客户端输入是否具有潜在危险值的值。

(继承自 Control)
ViewState

获取状态信息的字典,这些信息使您可以在同一页的多个请求间保存和还原服务器控件的视图状态。

(继承自 Control)
ViewStateIgnoresCase

获取一个值,该值指示 StateBag 对象是否不区分大小写。

(继承自 Control)
ViewStateMode

获取或设置此控件的视图状态模式。

(继承自 Control)
Visible

获取或设置一个值,该值指示服务器控件是否作为 UI 呈现在页上。

(继承自 Control)
WebPartManager

获取对与当前网页关联的 WebPartManager 控件的引用。

(继承自 EditorPart)
WebPartToEdit

获取对当前正在编辑的 WebPart 控件的引用。

(继承自 EditorPart)
Width

获取或设置 Web 服务器控件的宽度。

(继承自 WebControl)
Wrap

获取或设置一个指示面板中的内容是否换行的值。

(继承自 Panel)
Zone

获取对包含 EditorZoneBase 控件的 EditorPart 区域的引用。

(继承自 EditorPart)

方法

AddAttributesToRender(HtmlTextWriter)

将有关背景图像、对齐方式、换行和方向的信息添加到特性列表以进行呈现。

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

在子控件添加到 Control 对象的 Controls 集合后调用。

(继承自 Control)
AddParsedSubObject(Object)

通知服务器控件,分析了一个元素(XML 或 HTML),并将该元素添加到服务器控件的 ControlCollection 对象中。

(继承自 Control)
ApplyChanges()

BehaviorEditorPart 控件的值保存到关联 WebPart 控件的相应属性。

ApplyStyle(Style)

将指定样式的所有非空白元素复制到 Web 控件,覆盖控件的所有现有的样式元素。 此方法主要由控件开发人员使用。

(继承自 WebControl)
ApplyStyleSheetSkin(Page)

将页样式表中定义的样式属性应用到控件。

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

开始输出数据的设计时追踪。

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

收集有关服务器控件的信息并将该信息发送到 Trace 属性,在启用页的跟踪功能时将显示该属性。

(继承自 Control)
ClearCachedClientID()

将缓存的 ClientID 值设置为 null

(继承自 Control)
ClearChildControlState()

删除服务器控件的子控件的控件状态信息。

(继承自 Control)
ClearChildState()

删除服务器控件的所有子控件的视图状态和控件状态信息。

(继承自 Control)
ClearChildViewState()

删除服务器控件的所有子控件的视图状态信息。

(继承自 Control)
ClearEffectiveClientIDMode()

将当前控件实例和任何子控件的 ClientIDMode 属性设置为 Inherit

(继承自 Control)
CopyBaseAttributes(WebControl)

Style 对象未封装的属性从指定的 Web 服务器控件复制到从中调用此方法的 Web 服务器控件。 此方法主要由控件开发人员使用。

(继承自 WebControl)
CreateChildControls()

由 ASP.NET 页框架调用,以通知服务器控件在准备回发或呈现时使用基于撰写的实现来创建其所包含任何子控件。

(继承自 Control)
CreateControlCollection()

创建一个新 ControlCollection 对象来保存服务器控件的子控件(包括文本控件和服务器控件)。

(继承自 Control)
CreateControlStyle()

创建由 Panel 控件在内部用来实现所有与样式有关的属性的样式对象。

(继承自 Panel)
DataBind()

将数据源绑定到调用的服务器控件及其所有子控件。

(继承自 Part)
DataBind(Boolean)

将数据源绑定到调用的服务器控件及其所有子控件,同时可以选择引发 DataBinding 事件。

(继承自 Control)
DataBindChildren()

将数据源绑定到服务器控件的子控件。

(继承自 Control)
Dispose()

使服务器控件得以在从内存中释放之前执行最后的清理操作。

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

结束输出数据的设计时追踪。

(继承自 Control)
EnsureChildControls()

确定服务器控件是否包含子控件。 如果不包含,则创建子控件。

(继承自 Control)
EnsureID()

为尚未分配标识符的控件创建标识符。

(继承自 Control)
Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
FindControl(String)

在当前的命名容器中搜索带指定 id 参数的服务器控件。

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

使用指定的 idpathOffset 参数(该参数有助于搜索)中指定的整数在当前命名容器中搜索服务器控件。 不应重写此版本的 FindControl 方法。

(继承自 Control)
Focus()

为控件设置输入焦点。

(继承自 Control)
GetDesignModeState()

检索 EditorPart 控件的父区域的当前状态。

(继承自 EditorPart)
GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetRouteUrl(Object)

获取与一组路由参数对应的 URL。

(继承自 Control)
GetRouteUrl(RouteValueDictionary)

获取与一组路由参数对应的 URL。

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

获取与一组路由参数以及某个路由名称对应的 URL。

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

获取与一组路由参数以及某个路由名称对应的 URL。

(继承自 Control)
GetType()

获取当前实例的 Type

(继承自 Object)
GetUniqueIDRelativeTo(Control)

返回指定控件的 UniqueID 属性的前缀部分。

(继承自 Control)
HasControls()

确定服务器控件是否包含任何子控件。

(继承自 Control)
HasEvents()

返回一个值,该值指示是否为控件或任何子控件注册事件。

(继承自 Control)
IsLiteralContent()

确定服务器控件是否只包含文字内容。

(继承自 Control)
LoadControlState(Object)

SaveControlState() 方法保存的上一个页请求还原控件状态信息。

(继承自 Control)
LoadViewState(Object)

从使用 SaveViewState() 方法保存的前一请求还原视图状态信息。

(继承自 WebControl)
MapPathSecure(String)

检索虚拟路径(绝对的或相对的)映射到的物理路径。

(继承自 Control)
MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
MergeStyle(Style)

将指定样式的所有非空白元素复制到 Web 控件,但不覆盖该控件现有的任何样式元素。 此方法主要由控件开发人员使用。

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

确定服务器控件的事件是否沿页的 UI 服务器控件层次结构向上传递。

(继承自 Control)
OnDataBinding(EventArgs)

引发 DataBinding 事件。

(继承自 Control)
OnInit(EventArgs)

引发 Init 事件。

(继承自 Control)
OnLoad(EventArgs)

引发 Load 事件。

(继承自 Control)
OnPreRender(EventArgs)

引发 PreRender 事件。

(继承自 EditorPart)
OnUnload(EventArgs)

引发 Unload 事件。

(继承自 Control)
OpenFile(String)

获取用于读取文件的 Stream

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

将所有事件源及其信息分配给控件的父级。

(继承自 Control)
RemovedControl(Control)

Control 对象的 Controls 集合移除子控件后调用。

(继承自 Control)
Render(HtmlTextWriter)

将控件呈现给指定的 HTML 编写器。

(继承自 WebControl)
RenderBeginTag(HtmlTextWriter)

Panel 控件的 HTML 开始标记呈现到指定的编写器中。

(继承自 Panel)
RenderChildren(HtmlTextWriter)

将服务器控件子级的内容输出到提供的 HtmlTextWriter 对象,该对象可写入要在客户端上呈现的内容。

(继承自 Control)
RenderContents(HtmlTextWriter)

将控件的内容呈现到指定的编写器中。 此方法主要由控件开发人员使用。

(继承自 WebControl)
RenderControl(HtmlTextWriter)

将服务器控件内容输出到所提供的 HtmlTextWriter 对象,如果启用了跟踪,则还将存储有关该控件的跟踪信息。

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

使用提供的 HtmlTextWriter 对象将服务器控件内容输出到提供的 ControlAdapter 对象。

(继承自 Control)
RenderEndTag(HtmlTextWriter)

Panel 控件的 HTML 结束标记呈现到指定的编写器中。

(继承自 Panel)
ResolveAdapter()

获取负责呈现指定控件的控件适配器。

(继承自 Control)
ResolveClientUrl(String)

获取浏览器可以使用的 URL。

(继承自 Control)
ResolveUrl(String)

将 URL 转换为在请求客户端可用的 URL。

(继承自 Control)
SaveControlState()

保存将页面回发到服务器之后发生的所有服务器控件状态更改。

(继承自 Control)
SaveViewState()

保存调用 TrackViewState() 方法后修改的任何状态。

(继承自 WebControl)
SetDesignModeState(IDictionary)

将设计模式状态的特性应用于包含 EditorZoneBase 控件的当前 EditorPart 区域。

(继承自 EditorPart)
SetRenderMethodDelegate(RenderMethod)

分配事件处理程序委托,以将服务器控件及其内容呈现到父控件中。

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

使用跟踪数据键和跟踪数据值,为呈现数据的设计时追踪设置跟踪数据。

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

使用跟踪对象、跟踪数据键和跟踪数据值,为呈现数据的设计时追踪设置跟踪数据。

(继承自 Control)
SyncChanges()

WebPart 控件检索属性值并将这些属性值分配给关联 BehaviorEditorPart 控件。

ToString()

返回表示当前对象的字符串。

(继承自 Object)
TrackViewState()

使控件跟踪其视图状态的更改,以便将这些更改存储在对象的 ViewState 属性中。

(继承自 WebControl)

事件

DataBinding

当服务器控件绑定到数据源时发生。

(继承自 Control)
Disposed

当从内存释放服务器控件时发生,这是请求 ASP.NET 页时服务器控件生存期的最后阶段。

(继承自 Control)
Init

当服务器控件初始化时发生;初始化是控件生存期的第一步。

(继承自 Control)
Load

当服务器控件加载到 Page 对象中时发生。

(继承自 Control)
PreRender

在加载 Control 对象之后、呈现之前发生。

(继承自 Control)
Unload

当服务器控件从内存中卸载时发生。

(继承自 Control)

显式接口实现

IAttributeAccessor.GetAttribute(String)

获取具有指定名称的 Web 控件的特性。

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

将 Web 控件的特性设置为指定的名称和值。

(继承自 WebControl)
ICompositeControlDesignerAccessor.RecreateChildControls()

允许复合部件控件设计器的开发人员在设计图面上重新创建控件的子控件。

(继承自 Part)
IControlBuilderAccessor.ControlBuilder

有关此成员的说明,请参见 ControlBuilder

(继承自 Control)
IControlDesignerAccessor.GetDesignModeState()

有关此成员的说明,请参见 GetDesignModeState()

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

有关此成员的说明,请参见 SetDesignModeState(IDictionary)

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

有关此成员的说明,请参见 SetOwnerControl(Control)

(继承自 Control)
IControlDesignerAccessor.UserData

有关此成员的说明,请参见 UserData

(继承自 Control)
IDataBindingsAccessor.DataBindings

有关此成员的说明,请参见 DataBindings

(继承自 Control)
IDataBindingsAccessor.HasDataBindings

有关此成员的说明,请参见 HasDataBindings

(继承自 Control)
IExpressionsAccessor.Expressions

有关此成员的说明,请参见 Expressions

(继承自 Control)
IExpressionsAccessor.HasExpressions

有关此成员的说明,请参见 HasExpressions

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

有关此成员的说明,请参见 AddParsedSubObject(Object)

(继承自 Control)

扩展方法

FindDataSourceControl(Control)

返回与指定控件的数据控件关联的数据源。

FindFieldTemplate(Control, String)

返回指定控件的命名容器中指定列的字段模板。

FindMetaTable(Control)

返回包含数据控件的元表对象。

GetDefaultValues(INamingContainer)

为指定数据控件获取默认值的集合。

GetMetaTable(INamingContainer)

为指定数据控件获取表元数据。

SetMetaTable(INamingContainer, MetaTable)

为指定数据控件设置表元数据。

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

为指定数据控件设置表元数据和默认值映射。

SetMetaTable(INamingContainer, MetaTable, Object)

为指定数据控件设置表元数据和默认值映射。

TryGetMetaTable(INamingContainer, MetaTable)

确定表元数据是否可用。

EnableDynamicData(INamingContainer, Type)

为指定数据控件启用动态数据行为。

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

为指定数据控件启用动态数据行为。

EnableDynamicData(INamingContainer, Type, Object)

为指定数据控件启用动态数据行为。

适用于

另请参阅