語言

EditorPart 類別

定義

作為位於 EditorZoneBase 區域內的控制類別,並用於編輯 WebPart 控制。

public ref class EditorPart abstract : System::Web::UI::WebControls::WebParts::Part
[System.ComponentModel.Bindable(false)]
public abstract class EditorPart : System.Web.UI.WebControls.WebParts.Part
[<System.ComponentModel.Bindable(false)>]
type EditorPart = class
    inherit Part
Public MustInherit Class EditorPart
Inherits Part
繼承
衍生
屬性

範例

以下程式碼範例展示了宣告式與程式化控制項的使用 EditorPart 。 此程式碼範例包含四個部分:

  • 一個使用者控制功能,讓你能在網頁部分頁面上更改顯示模式。

  • 一個包含 EditorZone 控制項的網頁,並在區域中宣告了多個 EditorPart 來自 Web Parts 控制集的控制項,並附有自訂 WebPart 控制項的參考。

  • 一個包含自訂WebPart控制項的類別,以及一個用於編輯控制項屬性的EditorPart自訂WebPart控制項。

  • 說明範例在瀏覽器載入頁面時的運作方式。

本程式碼範例的第一部分是使用者控制,允許使用者在網頁上更改顯示模式。 關於顯示模式的詳細資訊及此控制項原始碼的說明,請參閱 「攻略:在網頁零件頁面更改顯示模式」。

<%@ 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 + " Mode", modeName);
        DisplayModeDropdown.Items.Add(item);
      }
    }

  }
 
  // 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;

  }

  void Page_PreRender(object sender, EventArgs e)
  {
    DisplayModeDropdown.SelectedValue = _manager.DisplayMode.Name;
  }
  
</script>
<div>
  <asp:DropDownList ID="DisplayModeDropdown" 
    runat="server"  
    AutoPostBack="true" 
    OnSelectedIndexChanged="DisplayModeDropdown_SelectedIndexChanged" />
</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 + " Mode", modeName)
            DisplayModeDropdown.Items.Add(item)
        End If
    Next mode

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 


Sub Page_PreRender(ByVal sender As Object, ByVal e As EventArgs) 
    DisplayModeDropdown.SelectedValue = _manager.DisplayMode.Name

End Sub 

</script>
<div>
  <asp:DropDownList ID="DisplayModeDropdown" 
    runat="server"  
    AutoPostBack="true" 
    OnSelectedIndexChanged="DisplayModeDropdown_SelectedIndexChanged" />
</div>

程式碼範例的第二部分是網頁。 它包含一個 EditorZone 宣告式的控制項參考,子 <zonetemplate> 元素則包含對兩個 Web Parts 控制項控制項 EditorPart 的宣告性參考。 該頁面也會參考自訂 WebPart 控制項,使用 Register 組件指令,並 <aspSample:TextDisplayWebPart> 參考元素控制項。

<%@ page language="c#" %>
<%@ register TagPrefix="uc1" 
  TagName="DisplayModeMenu" 
  Src="DisplayModecs.ascx" %>
<%@ register tagprefix="aspSample" 
  Namespace="Samples.AspNet.CS.Controls" 
  Assembly="TextDisplayWebPartCS" %>

<!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>
      Text Display WebPart with EditorPart
    </title>
  </head>
  <body>
    <form id="form1" runat="server">
      <asp:webpartmanager id="WebPartManager1" runat="server" />
      <uc1:DisplayModeMenu ID="DisplayModeMenu1" runat="server" />
      <asp:webpartzone id="zone1" runat="server" 
        CloseVerb-Enabled="false">
        <zonetemplate>
          <aspSample:TextDisplayWebPart 
            runat="server"   
            id="textwebpart" 
            title = "Text Content WebPart" />          
        </zonetemplate>
      </asp:webpartzone> 
      <asp:EditorZone ID="EditorZone1" runat="server">
        <ZoneTemplate>
          <asp:AppearanceEditorPart ID="AppearanceEditorPart1" 
            runat="server" />
          <asp:LayoutEditorPart ID="LayoutEditorPart1" 
            runat="server" />
        </ZoneTemplate>      
      </asp:EditorZone>
    </form>
  </body>
</html>
<%@ page language="vb" %>
<%@ register TagPrefix="uc1" 
  TagName="DisplayModeMenu" 
  Src="DisplayModevb.ascx" %>
<%@ register tagprefix="aspSample" 
  Namespace="Samples.AspNet.VB.Controls" 
  Assembly="TextDisplayWebPartVB" %>

<!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 id="Head1" runat="server">
    <title>
      Text Display WebPart with EditorPart
    </title>
  </head>
  <body>
    <form id="form1" runat="server">
      <asp:webpartmanager id="WebPartManager1" runat="server" />
      <uc1:DisplayModeMenu ID="DisplayModeMenu1" runat="server" />
      <asp:webpartzone id="zone1" runat="server" 
        CloseVerb-Enabled="false">
        <zonetemplate>
          <aspSample:TextDisplayWebPart 
            runat="server"   
            id="textwebpart" 
            title = "Text Content WebPart" />          
        </zonetemplate>
      </asp:webpartzone> 
      <asp:EditorZone ID="EditorZone1" runat="server">
        <ZoneTemplate>
          <asp:AppearanceEditorPart ID="AppearanceEditorPart1" 
            runat="server" />
          <asp:LayoutEditorPart ID="LayoutEditorPart1" 
            runat="server" />
        </ZoneTemplate>      
      </asp:EditorZone>
    </form>
  </body>
</html>

程式碼範例的第三部分是一個名為 WebPart的自訂TextDisplayWebPart類別。 類別會實作 IWebEditable 介面。 在此類別中包含一個巢狀的私有類別,該類別包含與該EditorPart類別相關聯且名為 TextDisplayWebPart的私有TextDisplayEditorPart類別的程式碼。 執行時,當TextDisplayWebPart控制項進入編輯模式時,TextDisplayWebPart.CreateEditorParts在其方法中會建立類別TextDisplayEditorPart的實例,並將其和其他控制項一同EditorZone顯示在EditorPart控制項中。

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 TextDisplayWebPart : WebPart
  {
    private String _contentText = null;
    private String _fontStyle = null;
    TextBox input;
    Label DisplayContent;
    Literal lineBreak;

    public override EditorPartCollection CreateEditorParts()
    {
      ArrayList editorArray = new ArrayList();
      TextDisplayEditorPart edPart = new TextDisplayEditorPart();
      edPart.ID = this.ID + "_editorPart1";
      editorArray.Add(edPart);
      EditorPartCollection editorParts = 
        new EditorPartCollection(editorArray);
      return editorParts;
    }

    public override object WebBrowsableObject
    {
      get { return this; }
    }

    [Personalizable(), WebBrowsable]
    public String ContentText
    {
      get { return _contentText; }
      set { _contentText = value; }
    }

    [Personalizable(), WebBrowsable()]
    public String FontStyle
    {
      get { return _fontStyle; }
      set { _fontStyle = value; }
    }

    protected override void CreateChildControls()
    {
      Controls.Clear();
      DisplayContent = new Label();
      DisplayContent.BackColor = Color.LightBlue;
      DisplayContent.Text = this.ContentText;
      if (FontStyle == null)
        FontStyle = "None";
      SetFontStyle(DisplayContent, FontStyle);
      this.Controls.Add(DisplayContent);

      lineBreak = new Literal();
      lineBreak.Text = @"<br />";
      Controls.Add(lineBreak);

      input = new TextBox();
      this.Controls.Add(input);
      Button update = new Button();
      update.Text = "Set Label Content";
      update.Click += new EventHandler(this.submit_Click);
      this.Controls.Add(update);
    }

    private void submit_Click(object sender, EventArgs e)
    {
      // Update the label string.
      if (!string.IsNullOrEmpty(input.Text))
      {
        _contentText = input.Text + @"<br />";
        input.Text = String.Empty;
        DisplayContent.Text = this.ContentText;
      }
    }

    private void SetFontStyle(Label label, String selectedStyle)
    {
      if (selectedStyle == "Bold")
      {
        label.Font.Bold = true;
        label.Font.Italic = false;
        label.Font.Underline = false;
      }
      else if (selectedStyle == "Italic")
      {
        label.Font.Italic = true;
        label.Font.Bold = false;
        label.Font.Underline = false;
      }
      else if (selectedStyle == "Underline")
      {
        label.Font.Underline = true;
        label.Font.Bold = false;
        label.Font.Italic = false;
      }
      else
      {
        label.Font.Bold = false;
        label.Font.Italic = false;
        label.Font.Underline = false;
      }
    }

    // Create a custom EditorPart to edit the WebPart control.
    [AspNetHostingPermission(SecurityAction.Demand,
      Level = AspNetHostingPermissionLevel.Minimal)]
    private class TextDisplayEditorPart : EditorPart
    {
      DropDownList _partContentFontStyle;

      public TextDisplayEditorPart()
      {
        Title = "Font Face";
      }

      public override bool ApplyChanges()
      {
        TextDisplayWebPart part = 
          (TextDisplayWebPart)WebPartToEdit;
        // Update the custom WebPart control with the font style.
        part.FontStyle = PartContentFontStyle.SelectedValue;

        return true;
      }

      public override void SyncChanges()
      {
        TextDisplayWebPart part = 
          (TextDisplayWebPart)WebPartToEdit;
        String currentStyle = part.FontStyle;

        // Select the current font style in the drop-down control.
        foreach (ListItem item in PartContentFontStyle.Items)
        {
          if (item.Value == currentStyle)
          {
            item.Selected = true;
            break;
          }
        }
      }

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

        // Add a set of font styles to the dropdown list.
        _partContentFontStyle = new DropDownList();
        _partContentFontStyle.Items.Add("Bold");
        _partContentFontStyle.Items.Add("Italic");
        _partContentFontStyle.Items.Add("Underline");
        _partContentFontStyle.Items.Add("None");

        Controls.Add(_partContentFontStyle);
      }

      protected override void RenderContents(HtmlTextWriter writer)
      {
        writer.Write("<b>Text Content Font Style</b>");
        writer.WriteBreak();
        writer.Write("Select a font style.");
        writer.WriteBreak();
        _partContentFontStyle.RenderControl(writer);
        writer.WriteBreak();
      }

      // Access the drop-down control through a property.
      private DropDownList PartContentFontStyle
      {
        get 
        {
          EnsureChildControls();
          return _partContentFontStyle;
        }
      }
    }
  }
}
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 TextDisplayWebPart
    Inherits WebPart
    Private _contentText As String = Nothing
    Private _fontStyle As String = Nothing
    Private input As TextBox
    Private DisplayContent As Label
    Private lineBreak As Literal

    Public Overrides Function CreateEditorParts() _
                                As EditorPartCollection
      Dim editorArray As New ArrayList()
      Dim edPart as New TextDisplayEditorPart()
      edPart.ID = Me.ID & "_editorPart1"
      editorArray.Add(edPart)
      Dim editorParts As New EditorPartCollection(editorArray)
      Return editorParts

    End Function

    Public Overrides ReadOnly Property WebBrowsableObject() _
                                        As Object
      Get
        Return Me
      End Get
    End Property

    <Personalizable(), WebBrowsable()> _
    Public Property ContentText() As String
      Get
        Return _contentText
      End Get
      Set(ByVal value As String)
        _contentText = Value
      End Set
    End Property

    <Personalizable(), WebBrowsable()> _
    Public Property FontStyle() As String
      Get
        Return _fontStyle
      End Get
      Set(ByVal value As String)
        _fontStyle = Value
      End Set
    End Property

    Protected Overrides Sub CreateChildControls()
      Controls.Clear()
      DisplayContent = New Label()
      DisplayContent.BackColor = Color.LightBlue
      DisplayContent.Text = Me.ContentText
      If FontStyle Is Nothing Then
        FontStyle = "None"
      End If
      SetFontStyle(DisplayContent, FontStyle)
      Me.Controls.Add(DisplayContent)

      lineBreak = New Literal()
      lineBreak.Text = "<br />"
      Controls.Add(lineBreak)

      input = New TextBox()
      Me.Controls.Add(input)
      Dim update As New Button()
      update.Text = "Set Label Content"
      AddHandler update.Click, AddressOf Me.submit_Click
      Me.Controls.Add(update)

    End Sub

    Private Sub submit_Click(ByVal sender As Object, _
                             ByVal e As EventArgs)
      ' Update the label string.
      If input.Text <> String.Empty Then
        _contentText = input.Text + "<br />"
        input.Text = String.Empty
        DisplayContent.Text = Me.ContentText
      End If

    End Sub

    Private Sub SetFontStyle(ByVal label As Label, _
                             ByVal selectedStyle As String)
      If selectedStyle = "Bold" Then
        label.Font.Bold = True
        label.Font.Italic = False
        label.Font.Underline = False
      ElseIf selectedStyle = "Italic" Then
        label.Font.Italic = True
        label.Font.Bold = False
        label.Font.Underline = False
      ElseIf selectedStyle = "Underline" Then
        label.Font.Underline = True
        label.Font.Bold = False
        label.Font.Italic = False
      Else
        label.Font.Bold = False
        label.Font.Italic = False
        label.Font.Underline = False
      End If

    End Sub

    ' Create a custom EditorPart to edit the WebPart control.
    <AspNetHostingPermission(SecurityAction.Demand, _
      Level:=AspNetHostingPermissionLevel.Minimal)> _
    Private Class TextDisplayEditorPart
      Inherits EditorPart
      Private _partContentFontStyle As DropDownList

      Public Sub New()
        Title = "Font Face"
      End Sub

      Public Overrides Function ApplyChanges() As Boolean
        Dim part As TextDisplayWebPart = CType(WebPartToEdit, _
                                               TextDisplayWebPart)
        ' Update the custom WebPart control with the font style.
        part.FontStyle = PartContentFontStyle.SelectedValue

        Return True

      End Function

      Public Overrides Sub SyncChanges()
        Dim part As TextDisplayWebPart = CType(WebPartToEdit, _
                                               TextDisplayWebPart)
        Dim currentStyle As String = part.FontStyle

        ' Select the current font style in the drop-down control.
        Dim item As ListItem
        For Each item In PartContentFontStyle.Items
          If item.Value = currentStyle Then
            item.Selected = True
            Exit For
          End If
        Next item

      End Sub

      Protected Overrides Sub CreateChildControls()
        Controls.Clear()

        ' Add a set of font styles to the dropdown list.
        _partContentFontStyle = New DropDownList()
        _partContentFontStyle.Items.Add("Bold")
        _partContentFontStyle.Items.Add("Italic")
        _partContentFontStyle.Items.Add("Underline")
        _partContentFontStyle.Items.Add("None")

        Controls.Add(_partContentFontStyle)

      End Sub

      Protected Overrides Sub RenderContents(ByVal writer _
                                             As HtmlTextWriter)
        writer.Write("<b>Text Content Font Style</b>")
        writer.WriteBreak()
        writer.Write("Select a font style.")
        writer.WriteBreak()
        _partContentFontStyle.RenderControl(writer)
        writer.WriteBreak()

      End Sub

      ' Access the drop-down control through a property.
      Private ReadOnly Property PartContentFontStyle() As DropDownList
        Get
          EnsureChildControls()
          Return _partContentFontStyle
        End Get
      End Property

    End Class

  End Class

End Namespace

在瀏覽器載入頁面,並在 顯示模式 控制鍵中選擇 編輯模式 切換到編輯模式。 點擊控制項標題欄 TextDisplayWebPart 的動詞選單(向下箭頭),然後點選 編輯 控制項。 當編輯介面可見時,你會看到三個 EditorPart 控制項,包括一個讓你編輯 TextDisplayWebPart.FontStyle 屬性的自訂控制項。 如果你在編輯介面做了一些修改並點擊 套用 按鈕,你可以用下拉選單控制項將頁面回到瀏覽模式,並完整看到編輯變更的效果。

備註

該 EditorPart 類別提供一組基礎屬性與方法,這些屬性與方法由 Web Parts 控制集所提供的衍生 EditorPart 控制項,以及自訂 EditorPart 控制項所使用。 EditorPart控制項允許使用者透過修改其版面、外觀、屬性、行為或其他特性來編輯相關WebPart控制項。

編輯使用者介面(UI)由包含EditorZoneBase控制項的區域組成EditorPart,會在網頁進入編輯模式後顯示。

Note

EditorPart控制項只能在由該EditorZoneBase類別衍生的區域內使用,例如控制區EditorZone。

當頁面進入編輯模式後,使用者可透過點擊所選控制項的動詞選單中的編輯動詞來選擇 WebPart 要編輯的控制項。 一次只能編輯一個 WebPart 控制項。

Web Parts 控制集提供多個衍生 EditorPart 控制項,如下表所示。 這些控制項提供大多數應用程式所需的所有編輯功能。 在網頁部分頁面中使用這些控制項的典型方法是在元素 <zonetemplate> 中以頁面持久性格式宣告它們,其中 <zonetemplate> 是元素 <asp:editorzone> 的子元素。 關於程式碼範例,請參閱本主題的範例部分。

控制項的類型 Description
AppearanceEditorPart 編輯相關控制項的外觀,包括標題文字、高度、寬度及邊框屬性等屬性。
BehaviorEditorPart 編輯相關控制項的某些行為,例如是否可編輯、是否可關閉,或是否可移動至其他區域。 這個控制項只有在共享個人化範圍中編輯控制項時才會在頁面上顯示。
LayoutEditorPart 編輯相關控制項的版面屬性,例如它是正常狀態還是最小化(摺疊)狀態,以及它被放置在哪個區域。
PropertyGridEditorPart 編輯相關控制項的屬性,前提是這些屬性在原始碼 WebBrowsable 中有屬性宣告。

Note

為了提升可及性,Web Parts 控制集中提供的所有 EditorPart 控制項都被渲染成一個 <fieldset> 元素。 該 <fieldset> 元素將用於編輯控制項的 EditorPart 相關控制項集合分組,並促進視覺使用者代理(如一般網頁瀏覽器)與語音導向使用者代理(如螢幕閱讀軟體)在這些控制項間的分頁導覽。

給實施者的注意事項

要建立自訂 EditorPart 控制,你必須覆蓋兩個重要方法。 此 ApplyChanges() 方法將編輯器控制項的變更套用到 WebPart 被編輯的控制項上。 此方法取得 SyncChanges() 被編輯控制項的當前值 WebPart ,讓編輯控制項可以自行編輯。 利用這兩個關鍵方法,你可以取得並設定自訂控制項與EditorPart被編輯控制項之間的WebPart數值。

如果你是從EditorPart建立自訂編輯器控制項的類別衍生出來,你可以透過實作EditorZoneBase介面在IWebEditable控制項、使用者控制項或伺服器控制項中,將自訂控制項加入WebPart區域。 更多細節及程式碼範例,請參閱 IWebEditable 課程概述。 另外,範例部分的程式碼範例示範如何在自訂IWebEditable控制項中實作WebPart。

建構函式

名稱 Description
EditorPart()

初始化該類別以供繼承類別實例使用。 此建構子只能由繼承類別呼叫。

屬性

名稱 Description
AccessKey

取得或設定存取金鑰,讓你能快速導航到網頁伺服器控制。

(繼承來源 WebControl)
Adapter

拿到瀏覽器專用的控制器轉接器。

(繼承來源 Control)
AppRelativeTemplateSourceDirectory

取得或設定包含此控制項的 or Page 物件的UserControl應用程式相對虛擬目錄。

(繼承來源 Control)
Attributes

取得一組任意屬性(僅用於渲染),這些屬性與控制項上的屬性不對應。

(繼承來源 WebControl)
BackColor

取得或設定網頁伺服器控制項的背景色。

(繼承來源 WebControl)
BackImageUrl

取得或設定面板控制的背景圖片 URL。

(繼承來源 Panel)
BindingContainer

取得包含該控制項資料綁定的控制項。

(繼承來源 Control)
BorderColor

取得或設定網頁控制的邊框顏色。

(繼承來源 WebControl)
BorderStyle

取得或設定網頁伺服器控制的邊界樣式。

(繼承來源 WebControl)
BorderWidth

取得或設定網頁伺服器控制的邊界寬度。

(繼承來源 WebControl)
ChildControlsCreated

會取得一個值,表示伺服器控制項的子控制項是否已被建立。

(繼承來源 Control)
ChromeState

讀取或設定零件控制是處於最小化狀態還是正常狀態。

(繼承來源 Part)
ChromeType

取得或設定框定 Web Parts 控制的邊界類型。

(繼承來源 Part)
ClientID

取得由 ASP.NET 產生的 HTML 標記的控制 ID。

(繼承來源 Control)
ClientIDMode

取得或設定用於產生屬性值 ClientID 的演算法。

(繼承來源 Control)
ClientIDSeparator

會得到一個字元值,代表該屬性中使用 ClientID 的分隔符字元。

(繼承來源 Control)
Context

取得 HttpContext 與伺服器控制項相關聯的物件,用於目前的網頁請求。

(繼承來源 Control)
Controls

取得 ControlCollection 一個物件,包含使用者介面階層中指定伺服器控制項的子控制項。

(繼承來源 Part)
ControlStyle

這就有網頁伺服器控制的風格。 此特性主要由對照顯影劑使用。

(繼承來源 WebControl)
ControlStyleCreated

會取得一個值,表示該屬性是否 Style 已建立 ControlStyle 物件。 此特性主要由控制顯影劑使用。

(繼承來源 WebControl)
CssClass

取得或設定由網頁伺服器控制項在用戶端渲染的層疊樣式表(CSS)類別。

(繼承來源 WebControl)
DataItemContainer

如果命名容器實 IDataItemContainer作 。

(繼承來源 Control)
DataKeysContainer

如果命名容器實 IDataKeysControl作 。

(繼承來源 Control)
DefaultButton

取得或設定控制按鈕中預設 Panel 按鈕的識別碼。

(繼承來源 Panel)
Description

取得或設定一段簡短的短語,總結零件控制的功能,供工具提示及零件控制目錄使用。

(繼承來源 Part)
DesignMode

會獲得一個值,表示是否在設計表面上使用控制項。

(繼承來源 Control)
Direction

取得或設定顯示包含文字 Panel 控制項的方向。

(繼承來源 Panel)
Display

會獲得一個值,指示當對應 WebPart 的控制項處於編輯模式時,是否應該顯示該控制項。

DisplayTitle

會取得包含標題文字的字串,顯示在控制項的 EditorPart 標題列中。

Enabled

取得或設定一個值,表示網頁伺服器控制是否已啟用。

(繼承來源 WebControl)
EnableTheming

取得或設定一個值,指示主題是否適用於此控制。

(繼承來源 WebControl)
EnableViewState

取得或設定一個值,指示伺服器控制項是否能持久化其視圖狀態,以及其包含的任何子控制項的視圖狀態,給請求端客戶端。

(繼承來源 Control)
Events

會取得一個事件處理代理清單來管理控制。 這個屬性是唯讀的。

(繼承來源 Control)
Font

取得與網頁伺服器控制項相關的字型屬性。

(繼承來源 WebControl)
ForeColor

取得或設定網頁伺服器控制項的前景顏色(通常是文字顏色)。

(繼承來源 WebControl)
GroupingText

取得或設定面板控制中控制組的說明。

(繼承來源 Panel)
HasAttributes

會得到一個值,表示控制項是否設定了屬性。

(繼承來源 WebControl)
HasChildViewState

會取得一個值,表示目前伺服器控制項的子控制項是否儲存了任何檢視狀態設定。

(繼承來源 Control)
Height

取得或設定網頁伺服器控制的高度。

(繼承來源 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

在頁面控制階層中,會取得伺服器控制項的父控制權的參考。

(繼承來源 Control)
RenderingCompatibility

會得到一個值,指定渲染後的 HTML 會相容的 ASP.NET 版本。

(繼承來源 Control)
ScrollBars

用來取得或設定滾動條在控制鍵中的 Panel 可見性和位置。

(繼承來源 Panel)
Site

當在設計表面渲染時,會取得承載當前控制項的容器資訊。

(繼承來源 Control)
SkinID

取得或設定皮膚貼合控制劑。

(繼承來源 WebControl)
Style

會取得一組文字屬性,這些屬性會被渲染成 Web 伺服器控制項外層標籤上的樣式屬性。

(繼承來源 WebControl)
SupportsDisabledAttribute

會取得一個值,指示當控制項disabled屬性為 IsEnabled時,是否應該將渲染中的 HTML 元素的屬性設false為「disabled」 。

(繼承來源 Panel)
TabIndex

取得或設定網頁伺服器控制的分頁索引。

(繼承來源 WebControl)
TagKey

取得 HtmlTextWriterTag 對應於此網頁伺服器控制的值。 此特性主要由對照顯影劑使用。

(繼承來源 WebControl)
TagName

取得控制標籤名稱。 此特性主要由對照顯影劑使用。

(繼承來源 WebControl)
TemplateControl

取得或設定包含此控制項的範本參考。

(繼承來源 Control)
TemplateSourceDirectory

取得包含當前伺服器控制權的 or Page 虛擬目錄UserControl。

(繼承來源 Control)
Title

取得或設定零件控制權的職稱。

(繼承來源 Part)
ToolTip

當滑鼠指標懸停在網頁伺服器控制項上時,會取得或設定顯示的文字。

(繼承來源 WebControl)
UniqueID

取得伺服器控制的唯一、階層限定的識別碼。

(繼承來源 Control)
ValidateRequestMode

取得或設定一個值,指示控制器是否檢查瀏覽器的客戶端輸入是否有潛在危險的值。

(繼承來源 Control)
ViewState

取得狀態資訊字典,讓你能儲存並還原伺服器控制的多個請求,針對同一頁面。

(繼承來源 Control)
ViewStateIgnoresCase

會得到一個值,表示該物件是否 StateBag 不區分大小寫。

(繼承來源 Control)
ViewStateMode

取得或設定此控制的視圖狀態模式。

(繼承來源 Control)
Visible

取得或設定一個值,指示伺服器控制項是否以 UI 形式呈現在頁面上。

(繼承來源 Control)
WebPartManager

會獲得與 WebPartManager 目前網頁相關的控制項參考。

WebPartToEdit

會得到目前正在編輯的控制項的參考 WebPart 。

Width

取得或設定網頁伺服器控制的寬度。

(繼承來源 WebControl)
Wrap

會取得或設定一個值,表示內容是否包裹在面板內。

(繼承來源 Panel)
Zone

會得到包含EditorZoneBase控制區的EditorPart參考。

方法

名稱 Description
AddAttributesToRender(HtmlTextWriter)

將背景影像、對齊、包覆和方向等資訊加入要渲染的屬性清單中。

(繼承來源 Panel)
AddedControl(Control, Int32)

在將子控制項加入 Controls 物件集合 Control 後被呼叫。

(繼承來源 Control)
AddParsedSubObject(Object)

通知伺服器控制項有元素(XML 或 HTML)被解析,並將該元素加入伺服器控制項的 ControlCollection 物件中。

(繼承來源 Control)
ApplyChanges()

將控制項中的 EditorPart 值儲存為對應 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, Int32)

搜尋目前的命名容器,使用指定的 id 與參數中 pathOffset 指定的整數,協助搜尋。 你不應該覆蓋這個版本的方法 FindControl 。

(繼承來源 Control)
FindControl(String)

在目前命名容器中搜尋具有指定 id 參數的伺服器控制項。

(繼承來源 Control)
Focus()

將輸入焦點設定到控制器。

(繼承來源 Control)
GetDesignModeState()

取得控制區父區目前的狀態 EditorPart 。

GetHashCode()

做為預設哈希函式。

(繼承來源 Object)
GetRouteUrl(Object)

取得對應一組路由參數的網址。

(繼承來源 Control)
GetRouteUrl(RouteValueDictionary)

取得對應一組路由參數的網址。

(繼承來源 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 事件。

OnUnload(EventArgs)

引發 Unload 事件。

(繼承來源 Control)
OpenFile(String)

用 Stream 來讀取檔案。

(繼承來源 Control)
RaiseBubbleEvent(Object, EventArgs)

將事件來源及其資訊指派給控制的父節點。

(繼承來源 Control)
RemovedControl(Control)

在子控制從物件集合Controls中Control移除後呼叫。

(繼承來源 Control)
Render(HtmlTextWriter)

將控制項渲染給指定的 HTML 編譯器。

(繼承來源 WebControl)
RenderBeginTag(HtmlTextWriter)

將控制項的 Panel HTML 開場標籤渲染給指定的寫入者。

(繼承來源 Panel)
RenderChildren(HtmlTextWriter)

將伺服器控制子節點的內容輸出到所提供 HtmlTextWriter 物件,該物件會寫入要在用戶端渲染的內容。

(繼承來源 Control)
RenderContents(HtmlTextWriter)

將控制項的內容渲染給指定的寫入者。 此方法主要由控制開發者使用。

(繼承來源 WebControl)
RenderControl(HtmlTextWriter, ControlAdapter)

伺服器控制內容輸出給所提供的 HtmlTextWriter 物件,使用該物件 ControlAdapter 。

(繼承來源 Control)
RenderControl(HtmlTextWriter)

將伺服器控制內容輸出給所提供 HtmlTextWriter 物件,並在啟用追蹤時儲存關於控制項的追蹤資訊。

(繼承來源 Control)
RenderEndTag(HtmlTextWriter)

將控制項的 Panel HTML 關閉標籤渲染成指定的寫入者。

(繼承來源 Panel)
ResolveAdapter()

取得負責渲染指定控制的控制介面卡。

(繼承來源 Control)
ResolveClientUrl(String)

會取得瀏覽器可以使用的網址。

(繼承來源 Control)
ResolveUrl(String)

將一個網址轉換成請求客戶端可用的網址。

(繼承來源 Control)
SaveControlState()

將自頁面發布以來發生的任何伺服器控制狀態變更,都儲存回伺服器。

(繼承來源 Control)
SaveViewState()

儲存方法被調用後 TrackViewState() 被修改的任何狀態。

(繼承來源 WebControl)
SetDesignModeState(IDictionary)

將設計模式狀態的特性套用到包含控制EditorZoneBase的當前EditorPart區域。

SetRenderMethodDelegate(RenderMethod)

指派一個事件處理代理,將伺服器控制權及其內容渲染到其父控制中。

(繼承來源 Control)
SetTraceData(Object, Object, Object)

設定追蹤資料,用於設計時追蹤渲染資料,使用追蹤物件、追蹤資料鍵及追蹤資料值。

(繼承來源 Control)
SetTraceData(Object, Object)

使用軌跡資料鍵與痕跡資料值,設定繪圖資料以進行設計時追蹤渲染資料。

(繼承來源 Control)
SyncChanges()

從其對應WebPart控制項中取得屬性值EditorPart。

ToString()

傳回表示目前 物件的字串。

(繼承來源 Object)
TrackViewState()

讓控制項追蹤其檢視狀態的變更,以便將它們儲存在物件屬性 ViewState 中。

(繼承來源 WebControl)

事件

名稱 Description
DataBinding

當伺服器控制項綁定到資料來源時會發生。

(繼承來源 Control)
Disposed

當伺服器控制從記憶體中釋放時發生,這是伺服器控制生命週期中請求 ASP.NET 頁面的最後階段。

(繼承來源 Control)
Init

發生在伺服器控制初始化時,這是其生命週期的第一步。

(繼承來源 Control)
Load

當伺服器控制項載入 Page 物件時會發生。

(繼承來源 Control)
PreRender

發生在物件載入後 Control 但渲染之前。

(繼承來源 Control)
Unload

當伺服器控制項從記憶體卸載時發生。

(繼承來源 Control)

明確介面實作

名稱 Description
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)

擴充方法

名稱 Description
EnableDynamicData(INamingContainer, Type, IDictionary<String,Object>)

啟用指定資料控制的動態資料行為。

EnableDynamicData(INamingContainer, Type, Object)

啟用指定資料控制的動態資料行為。

EnableDynamicData(INamingContainer, Type)

啟用指定資料控制的動態資料行為。

FindDataSourceControl(Control)

回傳與指定控制項相關聯的資料來源。

FindFieldTemplate(Control, String)

回傳指定控制項命名容器中指定欄位的欄位範本。

FindMetaTable(Control)

回傳包含資料控制項的元值物件。

GetDefaultValues(INamingContainer)

取得指定資料控制項的預設值集合。

GetMetaTable(INamingContainer)

取得指定資料控制的表格元資料。

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

設定指定資料控制項的表格元資料及預設值映射。

SetMetaTable(INamingContainer, MetaTable, Object)

設定指定資料控制項的表格元資料及預設值映射。

SetMetaTable(INamingContainer, MetaTable)

設定指定資料控制項的資料表元資料。

TryGetMetaTable(INamingContainer, MetaTable)

判斷表格中繼資料是否可用。

適用於

另請參閱