Share via


DeclarativeCatalogPart Třída

Definice

Umožňuje vývojářům přidat katalog WebPart nebo jiné serverové ovládací prvky na webovou stránku v deklarativním formátu trvalosti stránky. Tato třída se nemůže dědit.

public ref class DeclarativeCatalogPart sealed : System::Web::UI::WebControls::WebParts::CatalogPart
public sealed class DeclarativeCatalogPart : System.Web.UI.WebControls.WebParts.CatalogPart
type DeclarativeCatalogPart = class
    inherit CatalogPart
Public NotInheritable Class DeclarativeCatalogPart
Inherits CatalogPart
Dědičnost
DeclarativeCatalogPart

Příklady

Následující příklad kódu ukazuje, jak použít DeclarativeCatalogPart ovládací prvek deklarativně na webové stránce. Příklad má čtyři části:

  • Uživatelský ovládací prvek, který umožňuje měnit režimy zobrazení na stránce webových částí.

  • Webová stránka, která obsahuje ovládací prvek CatalogZone a ovládací prvek DeclarativeCatalogPart .

  • Soubor zdrojového kódu, který obsahuje dva vlastní WebPart ovládací prvky.

  • Vysvětlení toho, jak příklad funguje při načtení stránky v prohlížeči

První část tohoto příkladu kódu je uživatelský ovládací prvek, který umožňuje změnit režimy zobrazení na stránce. Podrobnosti o režimech zobrazení a popis zdrojového kódu v tomto ovládacím prvku najdete v tématu Návod: Změna režimů zobrazení na stránce webových částí.

<%@ 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=" 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=" 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>

Druhou částí příkladu kódu je webová stránka. V horní části stránky jsou dvě Register direktivy, jedna pro uživatelský ovládací prvek a jedna pro zkompilovanou komponentu, která obsahuje dva vlastní WebPart ovládací prvky. Všimněte si, že stránka obsahuje deklarativní odkaz na DeclarativeCatalogPart ovládací prvek vnořený ve správné hierarchii deklarativních prvků, jak je popsáno v části Poznámky v tomto tématu. Element <asp:declarativecatalogpart> obsahuje <webpartstemplate> prvek, který zase obsahuje odkazy na standardní ASP.NET Calendar ovládací prvek a dva vlastní WebPart ovládací prvky; to jsou ovládací prvky, které mohou uživatelé vybrat z katalogu. Stránka také obsahuje možnosti úprav, přičemž na stránce je PropertyGridEditorPart deklarován ovládací prvek. Tento ovládací prvek umožňuje uživatelům upravovat určité vlastnosti vlastních WebPart ovládacích prvků po jejich přidání na stránku a po přepnutí stránky do režimu úprav.

<%@ 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">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head id="Head1" runat="server">
    <title>
      DeclarativeCatalogPart Control
    </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>
          <asp:BulletedList ID="BulletedList1" 
            Runat="server"
            DisplayMode="HyperLink"
            Title="Favorites">
            <asp:ListItem Value="http://msdn.microsoft.com">
              MSDN
            </asp:ListItem>
            <asp:ListItem Value="http://www.asp.net">
              ASP.NET
            </asp:ListItem>
            <asp:ListItem Value="http://www.msn.com">
              MSN
            </asp:ListItem>
          </asp:BulletedList>
        </zonetemplate>
      </asp:webpartzone> 
      <asp:CatalogZone ID="CatalogZone1" runat="server">
        <ZoneTemplate>
          <asp:DeclarativeCatalogPart ID="DeclarativeCatalogPart1"  
            runat="server" 
            Title="Web Parts Catalog"
            ChromeType="TitleOnly" 
            Description="Contains a user control with Web Parts and 
              an ASP.NET Calendar control.">
            <WebPartsTemplate>
              <asp:Calendar ID="Calendar1" runat="server" 
                Title="My Calendar" 
                Description="ASP.NET Calendar control used as a personal calendar." />
              <aspSample:UserInfoWebPart 
                runat="server"   
                id="userinfo1" 
                title = "User Information WebPart"
                Description ="Contains custom, editable user information 
                  for display on a page." />
              <aspSample:TextDisplayWebPart 
                runat="server"   
                id="TextDisplayWebPart1" 
                title = "Text Display WebPart" 
                Description="Contains a label that users can dynamically update." />
            </WebPartsTemplate>              
          </asp:DeclarativeCatalogPart>
        </ZoneTemplate>
      </asp:CatalogZone>
      <asp:EditorZone ID="EditorZone1" runat="server">
      <ZoneTemplate>
        <asp:PropertyGridEditorPart ID="PropertyGridEditorPart1" runat="server" />
      </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">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>
      DeclarativeCatalogPart Control
    </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>
          <asp:BulletedList ID="BulletedList1" 
            Runat="server"
            DisplayMode="HyperLink"
            Title="Favorites">
            <asp:ListItem Value="http://msdn.microsoft.com">
              MSDN
            </asp:ListItem>
            <asp:ListItem Value="http://www.asp.net">
              ASP.NET
            </asp:ListItem>
            <asp:ListItem Value="http://www.msn.com">
              MSN
            </asp:ListItem>
          </asp:BulletedList>
        </zonetemplate>
      </asp:webpartzone> 
      <asp:CatalogZone ID="CatalogZone1" runat="server">
        <ZoneTemplate>
          <asp:DeclarativeCatalogPart ID="DeclarativeCatalogPart1"  
            runat="server" 
            Title="Web Parts Catalog"
            ChromeType="TitleOnly" 
            Description="Contains a user control with Web Parts and 
              an ASP.NET Calendar control.">
            <WebPartsTemplate>
              <asp:Calendar ID="Calendar1" runat="server" 
                Title="My Calendar" 
                Description="ASP.NET Calendar control used as a personal calendar." />
              <aspSample:UserInfoWebPart 
                runat="server"   
                id="userinfo1" 
                title = "User Information WebPart"
                Description ="Contains custom, editable user information 
                  for display on a page." />
              <aspSample:TextDisplayWebPart 
                runat="server"   
                id="TextDisplayWebPart1" 
                title = "Text Display WebPart" 
                Description="Contains a label that users can dynamically update." />
            </WebPartsTemplate>              
          </asp:DeclarativeCatalogPart>
        </ZoneTemplate>
      </asp:CatalogZone>
      <asp:EditorZone ID="EditorZone1" runat="server">
      <ZoneTemplate>
        <asp:PropertyGridEditorPart ID="PropertyGridEditorPart1" runat="server" />
      </ZoneTemplate>
      </asp:EditorZone> 
    </form>
  </body>
</html>

Třetí částí příkladu kódu je zdrojový kód pro oba WebPart ovládací prvky. Všimněte si, že některé vlastnosti těchto ovládacích prvků jsou označeny atributem WebBrowsable . To umožňuje ovládacímu PropertyGridEditorPart prvku dynamicky generovat uživatelské rozhraní pro uživatele, aby mohl tyto vlastnosti upravovat, když jsou ovládací prvky v režimu úprav. Vlastnosti jsou také označeny atributem WebDisplayName , který určuje text popisku, který se zobrazí vedle každého ovládacího prvku v uživatelském rozhraní pro úpravy.

Aby se příklad kódu spustil, musíte tento zdrojový kód zkompilovat. Můžete ho explicitně zkompilovat a umístit výsledné sestavení do složky Bin webu nebo globální mezipaměti sestavení . Případně můžete zdrojový kód umístit do složky App_Code webu, kde se bude dynamicky kompilovat za běhu. Návod, který ukazuje obě metody kompilace, najdete v tématu Návod: Vývoj a použití vlastního ovládacího prvku webového serveru.

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's 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 PetNameLabel;
    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")]
    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);

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

      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();
      PetNameLabel.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);
    }
  }

  [AspNetHostingPermission(SecurityAction.Demand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  [AspNetHostingPermission(SecurityAction.InheritanceDemand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  public class TextDisplayWebPart : WebPart
  {
    private String _contentText = null;
    TextBox input;
    Label DisplayContent;
    Literal lineBreak;

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

    protected override void CreateChildControls()
    {
      Controls.Clear();
      DisplayContent = new Label();
      DisplayContent.BackColor = Color.LightBlue;
      DisplayContent.Text = this.ContentText;
      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;
      }
    }
  }
}
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's 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 PetNameLabel 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")> _
    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)

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

      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()
      PetNameLabel.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


  <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

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

    Protected Overrides Sub CreateChildControls()
      Controls.Clear()
      DisplayContent = New Label()
      DisplayContent.BackColor = Color.LightBlue
      DisplayContent.Text = Me.ContentText
      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

  End Class

End Namespace

Když stránku načtete v prohlížeči, vyberte Režim katalogu v ovládacím prvku rozevíracího seznamu Režim zobrazení a přepněte do režimu katalogu. V režimu katalogu můžete zobrazit ovládací prvky, které jsou k dispozici pro přidání na stránku. Přidejte všechny tři ovládací prvky a pak pomocí rozevíracího seznamu Režim zobrazení vraťte stránku do režimu procházení. Tři ovládací prvky se zobrazí na stránce. Pokud použijete rozevírací seznam Režim zobrazení a přepnete stránku do režimu úprav, můžete kliknout na nabídku sloves (šipka dolů) v záhlaví ovládacího prvku Informace o uživateli a kliknutím na Upravit ovládací prvek upravit. Když je uživatelské rozhraní pro úpravy viditelné, uvidíte ovládací PropertyGridEditorPart prvek. Všimněte si, že ovládací prvek je vykreslen pro každou z UserInfoWebPart vlastností třídy, která byla označena atributem WebBrowsable . Pokud provedete nějaké změny v uživatelském rozhraní pro úpravy a kliknete na tlačítko Použít , můžete pomocí rozevíracího seznamu Režim zobrazení vrátit stránku do režimu procházení a zobrazit úplný efekt změn úprav.

Poznámky

Stejně jako jsou v sadě ovládacích prvků webové části zóny orientované na nástroje (podrobnosti najdete v přehledu ToolZone třídy), existují ovládací prvky orientované na Part nástroje a každý z těchto ovládacích prvků musí být umístěn v určitém typu zóny nástrojů. Ovládací prvky částí orientovaných na nástroje v sadě ovládacích prvků webových částí mají dvě rozlišovací vlastnosti:

  • Jedná se o pomocné ovládací prvky, které koncovým uživatelům umožňují přizpůsobit ovládací prvky na stránce webových částí.

  • Jsou viditelné pouze v určitých režimech zobrazení.

DeclarativeCatalogPart je ovládací prvek části, který se musí nacházet v CatalogZoneBase typu zóny, například CatalogZone v zóně poskytnuté se sadou ovládacích prvků webových částí. Ovládací DeclarativeCatalogPart prvek se zobrazí, pouze když je webová stránka v režimu zobrazení katalogu.

Tento DeclarativeCatalogPart ovládací prvek poskytuje vývojářům způsob, jak přidat sadu serverových ovládacích prvků deklarativně do katalogu na webové stránce. Katalog v sadě ovládacích prvků webových WebPart částí je jednoduše seznam nebo jiné serverové ovládací prvky, které jsou viditelné, když je stránka v režimu zobrazení katalogu. Uživatel může vybrat ovládací prvky ze seznamu a přidat je na webovou stránku, což uživatelům umožňuje změnit sadu ovládacích prvků a funkce na stránce.

Poznámka

Uživatelé můžou na webovou stránku přidat více instancí stejného ovládacího prvku v katalogu.

Výhodou použití ovládacího prvku DeclarativeCatalogPart k vytvoření katalogu serverových ovládacích prvků je, že nevyžaduje žádné kódování. Vývojáři stránek můžou s ovládacím prvku pracovat zcela ve formátu deklarativního (nebo trvalosti stránky), a proto je název ovládacího prvku.

Ovládací DeclarativeCatalogPart prvek má užitečnou vlastnost, která vývojářům umožňuje nastavit katalog ovládacích prvků, které lze použít na celém webu. Místo deklarování jednotlivých serverových ovládacích prvků v rámci DeclarativeCatalogPart ovládacího prvku může vývojář nastavit WebPartsListUserControlPath hodnotu vlastnosti na cestu uživatelského ovládacího prvku, který obsahuje seznam serverových ovládacích prvků, které by měly být v katalogu. Za běhu se ovládací prvky serveru, na které odkazuje uživatelský ovládací prvek, načtou do katalogu. Tímto způsobem může více stránek nebo webů odkazovat na stejný uživatelský ovládací prvek pro vytvoření katalogu. Při aktualizaci seznamu serverových ovládacích prvků uživatelského ovládacího prvku by se aktualizovaly všechny katalogy na základě uživatelského ovládacího prvku.

Třída DeclarativeCatalogPart má řadu veřejných vlastností, které přepíší zděděné vlastnosti. Většina z těchto vlastností se ve skutečnosti nepoužívá pro vykreslování ovládacího prvku; Jsou přepsány pouze proto, aby na nich bylo možné nastavit speciální atributy kódu, které je skryjí před nástroji návrhu, jako je Microsoft Visual Studio 2005. Tyto skryté vlastnosti byste neměli používat, protože nemají žádný vliv na vykreslování. Skutečnost, že jsou skryté v IntelliSense a podokně Vlastnosti v sadě Visual Studio pomáhá vývojářům vyhnout se jejich použití omylem. Všechny tyto skryté vlastnosti jsou jako takové označeny v příslušných tématech nápovědy.

Třída DeclarativeCatalogPart má také několik metod. Metoda GetAvailableWebPartDescriptions načte WebPartDescription objekt pro každý WebPart ovládací prvek v katalogu, což umožňuje ovládacímu DeclarativeCatalogPart prvku zobrazit informace o každém serverovém ovládacím prvku, aniž by bylo nutné vytvořit jeho instanci. Další metodou je GetWebPart metoda. Tato metoda získá instanci určitého WebPart ovládacího prvku na základě popisu předaného metodě.

Poznámka

Pro zlepšení přístupnosti DeclarativeCatalogPart se ovládací prvek vykreslí v rámci elementu <fieldset> . Element <fieldset> seskupuje související sadu ovládacích prvků používaných pro úpravy v ovládacím DeclarativeCatalogPart prvku a usnadňuje navigaci mezi těmito ovládacími prvky jak pro vizuální uživatelské agenty (například běžné webové prohlížeče), tak pro uživatele orientované na řeč (například software pro čtení obrazovky).

Konstruktory

DeclarativeCatalogPart()

Inicializuje novou instanci třídy.

Vlastnosti

AccessKey

Tuto zděděnou vlastnost nepoužívá ovládací prvek webových částí nastavený při vykreslování DeclarativeCatalogPart ovládacího prvku. Vlastnost je přepsána pouze proto, aby se zabránilo jejímu zobrazení v nástrojích návrháře sady Microsoft Visual Studio 2005.

Adapter

Získá adaptér specifický pro prohlížeč pro ovládací prvek.

(Zděděno od Control)
AppRelativeTemplateSourceDirectory

Získá nebo nastaví aplikace relativní virtuální adresář nebo UserControl objektuPage, který obsahuje tento ovládací prvek.

(Zděděno od Control)
Attributes

Získá kolekci libovolných atributů (pouze pro vykreslování), které neodpovídají vlastnostem ovládacího prvku.

(Zděděno od WebControl)
BackColor

Tuto zděděnou vlastnost ovládací prvek nepoužívá DeclarativeCatalogPart . Vlastnost je přepsána pouze proto, aby se zabránilo jejímu zobrazení v nástrojích návrháře sady Microsoft Visual Studio 2005.

BackImageUrl

Tuto zděděnou vlastnost nepoužívá ovládací prvek webových částí nastavený při vykreslování DeclarativeCatalogPart ovládacího prvku. Vlastnost je přepsána pouze proto, aby se zabránilo jejímu zobrazení v nástrojích návrháře sady Microsoft Visual Studio 2005.

BindingContainer

Získá ovládací prvek, který obsahuje datové vazby tohoto ovládacího prvku.

(Zděděno od Control)
BorderColor

Tuto zděděnou vlastnost ovládací prvek nepoužívá DeclarativeCatalogPart . Vlastnost je přepsána pouze proto, aby se zabránilo jejímu zobrazení v nástrojích návrháře sady Microsoft Visual Studio 2005.

BorderStyle

Tuto zděděnou vlastnost ovládací prvek nepoužívá DeclarativeCatalogPart . Vlastnost je přepsána pouze proto, aby se zabránilo jejímu zobrazení v nástrojích návrháře sady Microsoft Visual Studio 2005.

BorderWidth

Tuto zděděnou vlastnost ovládací prvek nepoužívá DeclarativeCatalogPart . Vlastnost je přepsána pouze proto, aby se zabránilo jejímu zobrazení v nástrojích návrháře sady Microsoft Visual Studio 2005.

ChildControlsCreated

Získá hodnotu, která označuje, zda byly vytvořeny podřízené ovládací prvky ovládacího prvku serveru.

(Zděděno od Control)
ChromeState

Získá nebo nastaví, zda je ovládací prvek součásti v minimalizovaném nebo normálním stavu.

(Zděděno od Part)
ChromeType

Získá nebo nastaví typ ohraničení, který rámuje webové části ovládací prvek.

(Zděděno od Part)
ClientID

Získá ID ovládacího prvku pro kód HTML, který je generován ASP.NET.

(Zděděno od Control)
ClientIDMode

Získá nebo nastaví algoritmus, který se používá k vygenerování hodnoty ClientID vlastnosti.

(Zděděno od Control)
ClientIDSeparator

Získá hodnotu znaku představující znak oddělovače použitý ve ClientID vlastnosti.

(Zděděno od Control)
Context

HttpContext Získá objekt přidružený k ovládacímu prvku serveru pro aktuální webový požadavek.

(Zděděno od Control)
Controls

ControlCollection Získá objekt, který obsahuje podřízené ovládací prvky pro zadaný server ovládací prvek v hierarchii uživatelského rozhraní.

(Zděděno od Part)
ControlStyle

Získá styl ovládacího prvku webového serveru. Tuto vlastnost používají především vývojáři ovládacích prvků.

(Zděděno od WebControl)
ControlStyleCreated

Získá hodnotu označující, zda Style objekt byl vytvořen pro ControlStyle vlastnost. Tuto vlastnost primárně používají vývojáři ovládacích prvků.

(Zděděno od WebControl)
CssClass

Tuto zděděnou vlastnost ovládací prvek nepoužívá DeclarativeCatalogPart . Vlastnost je přepsána pouze proto, aby se zabránilo jejímu zobrazení v nástrojích návrháře sady Microsoft Visual Studio 2005.

DataItemContainer

Získá odkaz na názvový kontejner, pokud názvový kontejner implementuje IDataItemContainer.

(Zděděno od Control)
DataKeysContainer

Získá odkaz na názvový kontejner, pokud názvový kontejner implementuje IDataKeysControl.

(Zděděno od Control)
DefaultButton

Tuto zděděnou vlastnost ovládací prvek nepoužívá DeclarativeCatalogPart . Vlastnost je přepsána pouze proto, aby se zabránilo jejímu zobrazení v nástrojích návrháře sady Microsoft Visual Studio 2005.

Description

Získá nebo nastaví stručnou frázi, která shrnuje, co ovládací prvek součásti dělá, pro použití v popisech a katalogech ovládacích prvků součástí.

(Zděděno od Part)
DesignMode

Získá hodnotu označující, zda je ovládací prvek použit na návrhové ploše.

(Zděděno od Control)
Direction

Tuto zděděnou vlastnost ovládací prvek nepoužívá DeclarativeCatalogPart . Vlastnost je přepsána pouze proto, aby se zabránilo jejímu zobrazení v nástrojích návrháře sady Microsoft Visual Studio 2005.

DisplayTitle

Získá řetězec, který obsahuje skutečný aktuální název ovládacího prvku CatalogPart .

(Zděděno od CatalogPart)
Enabled

Tuto zděděnou vlastnost ovládací prvek nepoužívá DeclarativeCatalogPart . Vlastnost je přepsána pouze proto, aby se zabránilo jejímu zobrazení v nástrojích návrháře sady Microsoft Visual Studio 2005.

EnableTheming

Tuto zděděnou vlastnost ovládací prvek nepoužívá DeclarativeCatalogPart . Vlastnost je přepsána pouze proto, aby se zabránilo jejímu zobrazení v nástrojích návrháře sady Microsoft Visual Studio 2005.

EnableViewState

Získá nebo nastaví hodnotu určující, zda serverový ovládací prvek zachová svůj stav zobrazení a stav zobrazení všech podřízených ovládacích prvků, které obsahuje, pro žádajícího klienta.

(Zděděno od Control)
Events

Získá seznam delegátů obslužné rutiny události pro ovládací prvek. Tato vlastnost je jen ke čtení.

(Zděděno od Control)
Font

Tuto zděděnou vlastnost ovládací prvek nepoužívá DeclarativeCatalogPart . Vlastnost je přepsána pouze proto, aby se zabránilo jejímu zobrazení v nástrojích návrháře sady Microsoft Visual Studio 2005.

ForeColor

Tuto zděděnou vlastnost ovládací prvek nepoužívá DeclarativeCatalogPart . Vlastnost je přepsána pouze proto, aby se zabránilo jejímu zobrazení v nástrojích návrháře sady Microsoft Visual Studio 2005.

GroupingText

Tuto zděděnou vlastnost ovládací prvek nepoužívá DeclarativeCatalogPart . Vlastnost je přepsána pouze proto, aby se zabránilo jejímu zobrazení v nástrojích návrháře sady Microsoft Visual Studio 2005.

HasAttributes

Získá hodnotu označující, zda ovládací prvek má nastaveny atributy.

(Zděděno od WebControl)
HasChildViewState

Získá hodnotu označující, zda podřízené ovládací prvky aktuálního serveru mají uložené nastavení stavu zobrazení.

(Zděděno od Control)
Height

Tuto zděděnou vlastnost ovládací prvek nepoužívá DeclarativeCatalogPart . Vlastnost je přepsána pouze proto, aby se zabránilo jejímu zobrazení v nástrojích návrháře sady Microsoft Visual Studio 2005.

HorizontalAlign

Tuto zděděnou vlastnost ovládací prvek nepoužívá DeclarativeCatalogPart . Vlastnost je přepsána pouze proto, aby se zabránilo jejímu zobrazení v nástrojích návrháře sady Microsoft Visual Studio 2005.

ID

Získá nebo nastaví programový identifikátor přiřazený k ovládacímu prvku serveru.

(Zděděno od Control)
IdSeparator

Získá znak použitý k oddělení identifikátorů ovládacích prvků.

(Zděděno od Control)
IsChildControlStateCleared

Získá hodnotu označující, zda ovládací prvky obsažené v tomto ovládacím prvku mají stav řízení.

(Zděděno od Control)
IsEnabled

Získá hodnotu označující, zda je ovládací prvek povolen.

(Zděděno od WebControl)
IsTrackingViewState

Získá hodnotu, která označuje, zda serverový ovládací prvek ukládá změny do stavu zobrazení.

(Zděděno od Control)
IsViewStateEnabled

Získá hodnotu označující, zda je pro tento ovládací prvek povolen stav zobrazení.

(Zděděno od Control)
LoadViewStateByID

Získá hodnotu označující, zda se ovládací prvek účastní načítání stavu ID zobrazení místo indexu.

(Zděděno od Control)
NamingContainer

Získá odkaz na názvový kontejner ovládacího prvku serveru, který vytvoří jedinečný obor názvů pro rozdíl mezi serverovými ovládacími prvky se stejnou ID hodnotou vlastnosti.

(Zděděno od Control)
Page

Získá odkaz na Page instanci, která obsahuje serverový ovládací prvek.

(Zděděno od Control)
Parent

Získá odkaz na serverový ovládací prvek nadřazený ovládací prvek v hierarchii ovládacích prvků stránky.

(Zděděno od Control)
RenderingCompatibility

Získá hodnotu, která určuje ASP.NET verze, která vykreslí HTML bude kompatibilní s.

(Zděděno od Control)
ScrollBars

Tuto zděděnou vlastnost ovládací prvek nepoužívá DeclarativeCatalogPart . Vlastnost je přepsána pouze proto, aby se zabránilo jejímu zobrazení v nástrojích návrháře sady Microsoft Visual Studio 2005.

Site

Získá informace o kontejneru, který hostuje aktuální ovládací prvek při vykreslení na návrhové ploše.

(Zděděno od Control)
SkinID

Tuto zděděnou vlastnost ovládací prvek nepoužívá DeclarativeCatalogPart . Vlastnost je přepsána pouze proto, aby se zabránilo jejímu zobrazení v nástrojích návrháře sady Microsoft Visual Studio 2005.

Style

Získá kolekci text atributů, které budou vykresleny jako atribut stylu na vnější značku webového serveru ovládacího prvku.

(Zděděno od WebControl)
SupportsDisabledAttribute

Získá hodnotu, která označuje, zda má ovládací prvek nastavit disabled atribut vykresleného html elementu na "zakázáno", pokud je falsevlastnost ovládacího prvku IsEnabled je .

(Zděděno od Panel)
TabIndex

Tuto zděděnou vlastnost ovládací prvek nepoužívá DeclarativeCatalogPart . Vlastnost je přepsána pouze proto, aby se zabránilo jejímu zobrazení v nástrojích návrháře sady Microsoft Visual Studio 2005.

TagKey

HtmlTextWriterTag Získá hodnotu, která odpovídá ovládacího prvku webového serveru. Tuto vlastnost používají především vývojáři ovládacích prvků.

(Zděděno od WebControl)
TagName

Získá název značky ovládacího prvku. Tuto vlastnost používají především vývojáři ovládacích prvků.

(Zděděno od WebControl)
TemplateControl

Získá nebo nastaví odkaz na šablonu, která obsahuje tento ovládací prvek.

(Zděděno od Control)
TemplateSourceDirectory

Získá virtuální adresář Page nebo UserControl , který obsahuje aktuální server ovládací prvek.

(Zděděno od Control)
Title

Získá nebo nastaví název, který se zobrazí v záhlaví ovládacího prvku.

ToolTip

Tuto zděděnou vlastnost ovládací prvek nepoužívá DeclarativeCatalogPart . Vlastnost je přepsána pouze proto, aby se zabránilo jejímu zobrazení v nástrojích návrháře sady Microsoft Visual Studio 2005.

UniqueID

Získá jedinečný hierarchicky kvalifikovaný identifikátor serverového ovládacího prvku.

(Zděděno od Control)
ValidateRequestMode

Získá nebo nastaví hodnotu, která označuje, zda ovládací prvek kontroluje vstup klienta z prohlížeče pro potenciálně nebezpečné hodnoty.

(Zděděno od Control)
ViewState

Získá slovník informací o stavu, který umožňuje uložit a obnovit stav zobrazení serverového ovládacího prvku napříč několika požadavky na stejnou stránku.

(Zděděno od Control)
ViewStateIgnoresCase

Získá hodnotu, která označuje, zda StateBag objekt nerozlišuje velká a malá písmena.

(Zděděno od Control)
ViewStateMode

Získá nebo nastaví režim zobrazení stavu tohoto ovládacího prvku.

(Zděděno od Control)
Visible

Tuto zděděnou vlastnost ovládací prvek nepoužívá DeclarativeCatalogPart . Vlastnost je přepsána pouze proto, aby se zabránilo jejímu zobrazení v nástrojích návrháře sady Microsoft Visual Studio 2005.

WebPartManager

Získá odkaz na aktuální instanci WebPartManager třídy.

(Zděděno od CatalogPart)
WebPartsListUserControlPath

Získá nebo nastaví cestu k uživatelskému ovládacímu prvku, který obsahuje seznam WebPart nebo jiné serverové ovládací prvky pro katalog.

WebPartsTemplate

Získá nebo nastaví odkaz na šablonu, která obsahuje WebPart ovládací prvky deklarované v katalogu.

Width

Tuto zděděnou vlastnost ovládací prvek nepoužívá DeclarativeCatalogPart . Vlastnost je přepsána pouze proto, aby se zabránilo jejímu zobrazení v nástrojích návrháře sady Microsoft Visual Studio 2005.

Wrap

Tuto zděděnou vlastnost ovládací prvek nepoužívá DeclarativeCatalogPart . Vlastnost je přepsána pouze proto, aby se zabránilo jejímu zobrazení v nástrojích návrháře sady Microsoft Visual Studio 2005.

Zone

Získá odkaz na zónu CatalogZoneBase , která obsahuje ovládací prvek CatalogPart .

(Zděděno od CatalogPart)

Metody

AddAttributesToRender(HtmlTextWriter)

Přidá informace o obrázku pozadí, zarovnání, obtékání a směru do seznamu atributů, které se mají vykreslit.

(Zděděno od Panel)
AddedControl(Control, Int32)

Volá se po přidání podřízeného ovládacího prvku do Controls kolekce objektu Control .

(Zděděno od Control)
AddParsedSubObject(Object)

Upozorní ovládací prvek serveru, že byl analyzován prvek XML nebo HTML, a přidá element do objektu ovládacího prvku ControlCollection serveru.

(Zděděno od Control)
ApplyStyle(Style)

Zkopíruje všechny neprázdné prvky zadaného stylu do webového ovládacího prvku a přepíše všechny existující prvky stylu ovládacího prvku. Tuto metodu primárně používají vývojáři ovládacích prvků.

(Zděděno od WebControl)
ApplyStyleSheetSkin(Page)

Použije vlastnosti stylu definované v šabloně stylů stránky na ovládací prvek.

(Zděděno od Control)
BeginRenderTracing(TextWriter, Object)

Zahájí trasování vykreslování dat v době návrhu.

(Zděděno od Control)
BuildProfileTree(String, Boolean)

Shromáždí informace o ovládacím prvku serveru a doručí je do Trace vlastnosti, která se má zobrazit, když je pro stránku povolené trasování.

(Zděděno od Control)
ClearCachedClientID()

Nastaví hodnotu v ClientID mezipaměti na null.

(Zděděno od Control)
ClearChildControlState()

Odstraní informace o stavu řízení pro podřízené ovládací prvky serveru.

(Zděděno od Control)
ClearChildState()

Odstraní informace o stavu zobrazení a stavu řízení pro všechny podřízené ovládací prvky serveru.

(Zděděno od Control)
ClearChildViewState()

Odstraní informace o stavu zobrazení všech podřízených ovládacích prvků serveru.

(Zděděno od Control)
ClearEffectiveClientIDMode()

ClientIDMode Nastaví vlastnost aktuální instance ovládacího prvku a všech podřízených ovládacích prvků na Inherit.

(Zděděno od Control)
CopyBaseAttributes(WebControl)

Zkopíruje vlastnosti, které nejsou zapouzdřeny objektem Style ze zadaného ovládacího prvku webového serveru do ovládacího prvku webového serveru, ze kterého je volána tato metoda. Tuto metodu používají především vývojáři ovládacích prvků.

(Zděděno od WebControl)
CreateChildControls()

Volá se rozhraním ASP.NET stránky, aby upozornily ovládací prvky serveru, které používají implementaci založenou na složení k vytvoření všech podřízených ovládacích prvků, které obsahují při přípravě na publikování zpět nebo vykreslování.

(Zděděno od Control)
CreateControlCollection()

Vytvoří nový ControlCollection objekt, který bude obsahovat podřízené ovládací prvky (literál i server) serverového ovládacího prvku.

(Zděděno od Control)
CreateControlStyle()

Vytvoří objekt stylu, který se interně používá ovládací prvek k implementaci všech vlastností souvisejících se stylem Panel .

(Zděděno od Panel)
DataBind()

Vytvoří vazbu zdroje dat na vyvoláný serverový ovládací prvek a všechny jeho podřízené ovládací prvky.

(Zděděno od Part)
DataBind(Boolean)

Vytvoří vazbu zdroje dat na vyvoláný serverový ovládací prvek a všechny jeho podřízené ovládací prvky s možností vyvolat DataBinding událost.

(Zděděno od Control)
DataBindChildren()

Sváže zdroj dat s podřízenými ovládacími prvky serverového ovládacího prvku.

(Zděděno od Control)
Dispose()

Umožňuje ovládacímu prvku serveru provést konečné vyčištění před uvolněním z paměti.

(Zděděno od Control)
EndRenderTracing(TextWriter, Object)

Ukončí trasování vykreslovaných dat v době návrhu.

(Zděděno od Control)
EnsureChildControls()

Určuje, zda serverový ovládací prvek obsahuje podřízené ovládací prvky. Pokud ne, vytvoří podřízené ovládací prvky.

(Zděděno od Control)
EnsureID()

Vytvoří identifikátor ovládacích prvků, které nemají přiřazený identifikátor.

(Zděděno od Control)
Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
FindControl(String)

Vyhledá v aktuálním kontejneru pojmenování serverový ovládací prvek pomocí zadaného id parametru.

(Zděděno od Control)
FindControl(String, Int32)

Vyhledá v aktuálním kontejneru pojmenování serverový ovládací prvek se zadaným id a celočíselným číslem zadaným v parametru pathOffset , který pomáhá při hledání. Tuto verzi metody byste neměli FindControl přepsat.

(Zděděno od Control)
Focus()

Nastaví fokus vstupu na ovládací prvek.

(Zděděno od Control)
GetAvailableWebPartDescriptions()

Vrátí kolekci popisů dostupných WebPart ovládacích prvků v katalogu.

GetDesignModeState()

Načte aktuální stav nadřazené CatalogPart zóny ovládacího prvku.

(Zděděno od CatalogPart)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetRouteUrl(Object)

Získá adresu URL, která odpovídá sadě parametrů trasy.

(Zděděno od Control)
GetRouteUrl(RouteValueDictionary)

Získá adresu URL, která odpovídá sadě parametrů trasy.

(Zděděno od Control)
GetRouteUrl(String, Object)

Získá adresu URL, která odpovídá sadě parametrů trasy a název trasy.

(Zděděno od Control)
GetRouteUrl(String, RouteValueDictionary)

Získá adresu URL, která odpovídá sadě parametrů trasy a název trasy.

(Zděděno od Control)
GetType()

Získá aktuální Type instanci.

(Zděděno od Object)
GetUniqueIDRelativeTo(Control)

Vrátí předponu vlastnosti UniqueID zadaného ovládacího prvku.

(Zděděno od Control)
GetWebPart(WebPartDescription)

Vrátí odkaz na WebPart ovládací prvek na základě hodnoty popisu předaného do metody.

HasControls()

Určuje, jestli serverový ovládací prvek obsahuje nějaké podřízené ovládací prvky.

(Zděděno od Control)
HasEvents()

Vrátí hodnotu označující, zda jsou události registrovány pro ovládací prvek nebo jakékoli podřízené ovládací prvky.

(Zděděno od Control)
IsLiteralContent()

Určuje, jestli serverový ovládací prvek obsahuje pouze obsah literálu.

(Zděděno od Control)
LoadControlState(Object)

Obnoví informace o stavu řízení z předchozího požadavku stránky, který byl uložen metodou SaveControlState() .

(Zděděno od Control)
LoadViewState(Object)

Obnoví informace o stavu zobrazení z předchozího požadavku, který byl uložen s metodou SaveViewState() .

(Zděděno od WebControl)
MapPathSecure(String)

Načte fyzickou cestu, na kterou se mapuje virtuální cesta, absolutní nebo relativní.

(Zděděno od Control)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
MergeStyle(Style)

Zkopíruje všechny neprázdné prvky zadaného stylu do webového ovládacího prvku, ale nepřepíše žádné existující prvky stylu ovládacího prvku. Tuto metodu používají především vývojáři ovládacích prvků.

(Zděděno od WebControl)
OnBubbleEvent(Object, EventArgs)

Určuje, zda je událost serverového ovládacího prvku předána hierarchii ovládacích prvků serveru uživatelského rozhraní stránky.

(Zděděno od Control)
OnDataBinding(EventArgs)

DataBinding Vyvolá událost.

(Zděděno od Control)
OnInit(EventArgs)

Init Vyvolá událost.

(Zděděno od Control)
OnLoad(EventArgs)

Load Vyvolá událost.

(Zděděno od Control)
OnPreRender(EventArgs)

PreRender Vyvolá událost.

(Zděděno od CatalogPart)
OnUnload(EventArgs)

Unload Vyvolá událost.

(Zděděno od Control)
OpenFile(String)

Stream Získá zvyk ke čtení souboru.

(Zděděno od Control)
RaiseBubbleEvent(Object, EventArgs)

Přiřadí všechny zdroje události a její informace nadřazené ovládacímu prvku.

(Zděděno od Control)
RemovedControl(Control)

Volá se po odebrání podřízeného ovládacího prvku z Controls kolekce objektu Control .

(Zděděno od Control)
Render(HtmlTextWriter)

Vykreslí ovládací prvek do zadaného zapisovače HTML.

(Zděděno od WebControl)
RenderBeginTag(HtmlTextWriter)

Vykreslí levou značku Panel HTML ovládacího prvku určenému zapisovači.

(Zděděno od Panel)
RenderChildren(HtmlTextWriter)

Vypíše obsah podřízených položek serverového ovládacího prvku do zadaného HtmlTextWriter objektu, který zapíše obsah, který se má vykreslit v klientovi.

(Zděděno od Control)
RenderContents(HtmlTextWriter)

Vykreslí obsah ovládacího prvku určenému zapisovači. Tuto metodu používají především vývojáři ovládacích prvků.

(Zděděno od WebControl)
RenderControl(HtmlTextWriter)

Vypíše obsah ovládacích prvků serveru do zadaného HtmlTextWriter objektu a uloží informace o trasování ovládacího prvku, pokud je trasování povolené.

(Zděděno od Control)
RenderControl(HtmlTextWriter, ControlAdapter)

Vypíše obsah ovládacích prvků serveru do zadaného HtmlTextWriter objektu pomocí zadaného ControlAdapter objektu.

(Zděděno od Control)
RenderEndTag(HtmlTextWriter)

Vykreslí koncovou značku Panel HTML ovládacího prvku do zadaného zapisovače.

(Zděděno od Panel)
ResolveAdapter()

Získá řídicí adaptér zodpovědný za vykreslení zadaného ovládacího prvku.

(Zděděno od Control)
ResolveClientUrl(String)

Získá adresu URL, kterou lze použít v prohlížeči.

(Zděděno od Control)
ResolveUrl(String)

Převede adresu URL na adresu URL, která je použitelná v žádajícím klientovi.

(Zděděno od Control)
SaveControlState()

Uloží všechny změny stavu ovládacího prvku serveru, ke kterým došlo od okamžiku, kdy byla stránka odeslána zpět na server.

(Zděděno od Control)
SaveViewState()

Uloží všechny stavy, které byly změněny po TrackViewState() vyvolání metody.

(Zděděno od WebControl)
SetDesignModeState(IDictionary)

Nastaví data v době návrhu ovládacího prvku.

(Zděděno od CatalogPart)
SetRenderMethodDelegate(RenderMethod)

Přiřadí delegáta obslužné rutiny události, který vykresluje serverový ovládací prvek a jeho obsah do nadřazeného ovládacího prvku.

(Zděděno od Control)
SetTraceData(Object, Object)

Nastaví trasovací data pro trasování vykreslovaných dat v době návrhu pomocí klíče dat trasování a hodnoty dat trasování.

(Zděděno od Control)
SetTraceData(Object, Object, Object)

Nastaví trasovací data pro trasování vykreslování dat v době návrhu pomocí trasovaného objektu, klíče dat trasování a hodnoty dat trasování.

(Zděděno od Control)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)
TrackViewState()

Způsobí, že ovládací prvek sleduje změny stavu zobrazení, aby mohly být uloženy ve vlastnosti objektu ViewState .

(Zděděno od WebControl)

Událost

DataBinding

Nastane, když ovládací prvek serveru vytvoří vazbu na zdroj dat.

(Zděděno od Control)
Disposed

Nastane při uvolnění serverového ovládacího prvku z paměti, což je poslední fáze životního cyklu řízení serveru, když je požadována stránka ASP.NET.

(Zděděno od Control)
Init

Nastane při inicializaci ovládacího prvku serveru, což je první krok v jeho životním cyklu.

(Zděděno od Control)
Load

Nastane při načtení serverového ovládacího prvku do objektu Page .

(Zděděno od Control)
PreRender

Nastane po načtení objektu Control , ale před vykreslením.

(Zděděno od Control)
Unload

Nastane při uvolnění serverového ovládacího prvku z paměti.

(Zděděno od Control)

Explicitní implementace rozhraní

IAttributeAccessor.GetAttribute(String)

Získá atribut webového ovládacího prvku se zadaným názvem.

(Zděděno od WebControl)
IAttributeAccessor.SetAttribute(String, String)

Nastaví atribut webového ovládacího prvku na zadaný název a hodnotu.

(Zděděno od WebControl)
ICompositeControlDesignerAccessor.RecreateChildControls()

Umožňuje vývojáři návrháře pro ovládací prvek složené části znovu vytvořit podřízené ovládací prvky ovládacího prvku na návrhové ploše.

(Zděděno od Part)
IControlBuilderAccessor.ControlBuilder

Popis tohoto člena najdete v tématu ControlBuilder.

(Zděděno od Control)
IControlDesignerAccessor.GetDesignModeState()

Popis tohoto člena najdete v tématu GetDesignModeState().

(Zděděno od Control)
IControlDesignerAccessor.SetDesignModeState(IDictionary)

Popis tohoto člena najdete v tématu SetDesignModeState(IDictionary).

(Zděděno od Control)
IControlDesignerAccessor.SetOwnerControl(Control)

Popis tohoto člena najdete v tématu SetOwnerControl(Control).

(Zděděno od Control)
IControlDesignerAccessor.UserData

Popis tohoto člena najdete v tématu UserData.

(Zděděno od Control)
IDataBindingsAccessor.DataBindings

Popis tohoto člena najdete v tématu DataBindings.

(Zděděno od Control)
IDataBindingsAccessor.HasDataBindings

Popis tohoto člena najdete v tématu HasDataBindings.

(Zděděno od Control)
IExpressionsAccessor.Expressions

Popis tohoto člena najdete v tématu Expressions.

(Zděděno od Control)
IExpressionsAccessor.HasExpressions

Popis tohoto člena najdete v tématu HasExpressions.

(Zděděno od Control)
IParserAccessor.AddParsedSubObject(Object)

Popis tohoto člena najdete v tématu AddParsedSubObject(Object).

(Zděděno od Control)

Metody rozšíření

FindDataSourceControl(Control)

Vrátí zdroj dat přidružený k ovládacímu prvku dat pro zadaný ovládací prvek.

FindFieldTemplate(Control, String)

Vrátí šablonu pole pro zadaný sloupec v kontejneru názvů zadaného ovládacího prvku.

FindMetaTable(Control)

Vrátí objekt metatable pro ovládací prvek obsahující data.

GetDefaultValues(INamingContainer)

Získá kolekci výchozích hodnot pro zadaný datový ovládací prvek.

GetMetaTable(INamingContainer)

Získá metadata tabulky pro zadaný datový ovládací prvek.

SetMetaTable(INamingContainer, MetaTable)

Nastaví metadata tabulky pro zadaný ovládací prvek dat.

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

Nastaví metadata tabulky a mapování výchozích hodnot pro zadaný ovládací prvek dat.

SetMetaTable(INamingContainer, MetaTable, Object)

Nastaví metadata tabulky a mapování výchozích hodnot pro zadaný ovládací prvek dat.

TryGetMetaTable(INamingContainer, MetaTable)

Určuje, jestli jsou k dispozici metadata tabulky.

EnableDynamicData(INamingContainer, Type)

Povolí chování dynamických dat pro zadaný datový ovládací prvek.

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

Povolí chování dynamických dat pro zadaný datový ovládací prvek.

EnableDynamicData(INamingContainer, Type, Object)

Povolí chování dynamických dat pro zadaný datový ovládací prvek.

Platí pro

Viz také