Sdílet prostřednictvím


ProxyWebPartManager Třída

Definice

Poskytuje vývojářům způsob, jak deklarovat statická připojení na stránce obsahu, když WebPartManager je ovládací prvek deklarován na přidružené stránce předlohy stránky obsahu.

public ref class ProxyWebPartManager : System::Web::UI::Control
[System.ComponentModel.Bindable(false)]
public class ProxyWebPartManager : System.Web.UI.Control
[<System.ComponentModel.Bindable(false)>]
type ProxyWebPartManager = class
    inherit Control
Public Class ProxyWebPartManager
Inherits Control
Dědičnost
ProxyWebPartManager
Atributy

Příklady

Následující příklad kódu ukazuje, jak pomocí ProxyWebPartManager třídy deklarovat statická připojení na stránkách obsahu v aplikaci, která používá stránky předlohy. Příklad má pět částí:

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

  • Zdrojový kód pro rozhraní a dva WebPart ovládací prvky, které fungují jako zprostředkovatel a příjemce připojení.

  • Webová stránka předlohy, která je hostitelem uživatelského ovládacího prvku, stránek obsahu a WebPartManager ovládacího prvku pro aplikaci.

  • Webová stránka obsahu, která je hostitelem ProxyWebPartManager ovládacího prvku, dvou vlastních WebPart ovládacích prvků a statické připojení pro propojení těchto dvou ovládacích prvků.

  • Vysvětlení způsobu spuštění ukázkové stránky

První část tohoto příkladu kódu je uživatelský ovládací prvek, který uživatelům umožňuje změnit režimy zobrazení na webové stránce. Uložte následující zdrojový kód do souboru .ascx a dejte mu název souboru, který je přiřazen Src atributu Register direktivy pro tento uživatelský ovládací prvek, který se nachází v horní části hostitelské stránky předlohy. Podrobnosti o režimech zobrazení a popis zdrojového kódu v tomto ovládacím prvku naleznete v návodu : 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="&nbsp;Display Mode" 
      Font-Bold="true"
      Font-Size="8"
      Width="120" 
      AssociatedControlID="DisplayModeDropdown"/>
    <asp:DropDownList ID="DisplayModeDropdown" runat="server"  
      AutoPostBack="true" 
      Width="120"
      OnSelectedIndexChanged="DisplayModeDropdown_SelectedIndexChanged" />
    <asp:LinkButton ID="LinkButton1" runat="server"
      Text="Reset User State" 
      ToolTip="Reset the current user's personalization data for the page."
      Font-Size="8" 
      OnClick="LinkButton1_Click" />
    <asp:Panel ID="Panel2" runat="server" 
      GroupingText="Personalization Scope"
      Font-Bold="true"
      Font-Size="8" 
      Visible="false" >
      <asp:RadioButton ID="RadioButton1" runat="server" 
        Text="User" 
        AutoPostBack="true"
        GroupName="Scope" OnCheckedChanged="RadioButton1_CheckedChanged" />
      <asp:RadioButton ID="RadioButton2" runat="server" 
        Text="Shared" 
        AutoPostBack="true"
        GroupName="Scope" 
        OnCheckedChanged="RadioButton2_CheckedChanged" />
    </asp:Panel>
  </asp:Panel>
</div>
<%@ control language="vb" classname="DisplayModeMenuVB"%>
<script runat="server">
  ' Use a field to reference the current WebPartManager.
  Dim _manager As WebPartManager

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

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

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

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

  End Sub

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

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

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

  End Sub

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

Druhou částí příkladu kódu je zdrojový kód pro rozhraní a ovládací prvky. Zdrojový soubor obsahuje jednoduché rozhraní s názvem IZipCode. Existuje také WebPart třída, ZipCodeWebPart která implementuje rozhraní a funguje jako zprostředkovatel řízení. Jeho ProvideIZipCode metoda je metoda zpětného volání, která implementuje jediný člen rozhraní. Metoda jednoduše vrátí instanci rozhraní. Všimněte si, že metoda je označena atributem ConnectionProvider v jeho metadatech. Toto je mechanismus pro identifikaci metody jako metody zpětného volání pro spojovací bod poskytovatele. Druhá WebPart třída je pojmenována WeatherWebParta funguje jako příjemce pro připojení. Tato třída má metodu s názvem GetZipCode , která získá instanci IZipCode rozhraní z ovládacího prvku zprostředkovatele. Všimněte si, že tato metoda je označena jako metoda spojovacího bodu příjemce s atributem ConnectionConsumer v jeho metadatech.

Pro spuštění příkladu kódu je nutné zkompilovat tento zdrojový kód. Můžete jej explicitně zkompilovat a výsledné sestavení umístit do složky Bin vašeho 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. Tento příklad kódu používá dynamickou kompilaci. Návod, který ukazuje, jak se zkompilovat, naleznete v části Návod: Vývoj a použití vlastního ovládacího prvku webového serveru.

namespace Samples.AspNet.CS.Controls
{
  using System;
  using System.Web;
  using System.Web.Security;
  using System.Security.Permissions;
  using System.Web.UI;
  using System.Web.UI.WebControls;
  using System.Web.UI.WebControls.WebParts;

  [AspNetHostingPermission(SecurityAction.Demand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  [AspNetHostingPermission(SecurityAction.InheritanceDemand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  public interface IZipCode
  {
    string ZipCode { get; set;}
  }

  [AspNetHostingPermission(SecurityAction.Demand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  [AspNetHostingPermission(SecurityAction.InheritanceDemand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  public class ZipCodeWebPart : WebPart, IZipCode
  {
    string zipCodeText = String.Empty;
    TextBox input;
    Button send;

    public ZipCodeWebPart()
    {
    }

    // Make the implemented property personalizable to save 
    // the Zip Code between browser sessions.
    [Personalizable()]
    public virtual string ZipCode
    {
      get { return zipCodeText; }
      set { zipCodeText = value; }
    }

    // This is the callback method that returns the provider.
    [ConnectionProvider("Zip Code Provider", "ZipCodeProvider")]
    public IZipCode ProvideIZipCode()
    {
      return this;
    }

    protected override void CreateChildControls()
    {
      Controls.Clear();
      input = new TextBox();
      this.Controls.Add(input);
      send = new Button();
      send.Text = "Enter 5-digit Zip Code";
      send.Click += new EventHandler(this.submit_Click);
      this.Controls.Add(send);
    }

    private void submit_Click(object sender, EventArgs e)
    {
      if (!string.IsNullOrEmpty(input.Text))
      {
        zipCodeText = Page.Server.HtmlEncode(input.Text);
        input.Text = String.Empty;
      }
    }
  }

  [AspNetHostingPermission(SecurityAction.Demand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  [AspNetHostingPermission(SecurityAction.InheritanceDemand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  public class WeatherWebPart : WebPart
  {
    private IZipCode _provider;
    string _zipSearch;
    Label DisplayContent;

    // This method is identified by the ConnectionConsumer 
    // attribute, and is the mechanism for connecting with 
    // the provider. 
    [ConnectionConsumer("Zip Code Consumer", "ZipCodeConsumer")]
    public void GetIZipCode(IZipCode Provider)
    {
      _provider = Provider;
    }
    
    protected override void OnPreRender(EventArgs e)
    {
      EnsureChildControls();

      if (this._provider != null)
      {
        _zipSearch = _provider.ZipCode.Trim();
        DisplayContent.Text = "My Zip Code is:  " + _zipSearch;
      }
    }

    protected override void CreateChildControls()
    {
      Controls.Clear();
      DisplayContent = new Label();
      this.Controls.Add(DisplayContent);
    }
  }
}
Imports System.Web
Imports System.Web.Security
Imports System.Security.Permissions
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 Interface IZipCode

    Property ZipCode() As String

  End Interface


  <AspNetHostingPermission(SecurityAction.Demand, _
    Level:=AspNetHostingPermissionLevel.Minimal)> _
  <AspNetHostingPermission(SecurityAction.InheritanceDemand, _
    Level:=AspNetHostingPermissionLevel.Minimal)> _
  Public Class ZipCodeWebPart
    Inherits WebPart
    Implements IZipCode
    Private zipCodeText As String = String.Empty
    Private input As TextBox
    Private send As Button

    Public Sub New()
    End Sub

    ' Make the implemented property personalizable to save 
    ' the Zip Code between browser sessions.
    <Personalizable()> _
    Public Property ZipCode() As String _
      Implements IZipCode.ZipCode

      Get
        Return zipCodeText
      End Get
      Set(ByVal value As String)
        zipCodeText = value
      End Set
    End Property

    ' This is the callback method that returns the provider.
    <ConnectionProvider("Zip Code Provider", "ZipCodeProvider")> _
    Public Function ProvideIZipCode() As IZipCode
      Return Me
    End Function


    Protected Overrides Sub CreateChildControls()
      Controls.Clear()
      input = New TextBox()
      Me.Controls.Add(input)
      send = New Button()
      send.Text = "Enter 5-digit Zip Code"
      AddHandler send.Click, AddressOf Me.submit_Click
      Me.Controls.Add(send)

    End Sub


    Private Sub submit_Click(ByVal sender As Object, _
      ByVal e As EventArgs)

      If input.Text <> String.Empty Then
        zipCodeText = Page.Server.HtmlEncode(input.Text)
        input.Text = String.Empty
      End If

    End Sub

  End Class


  <AspNetHostingPermission(SecurityAction.Demand, _
    Level:=AspNetHostingPermissionLevel.Minimal)> _
  <AspNetHostingPermission(SecurityAction.InheritanceDemand, _
    Level:=AspNetHostingPermissionLevel.Minimal)> _
  Public Class WeatherWebPart
    Inherits WebPart
    Private _provider As IZipCode
    Private _zipSearch As String
    Private DisplayContent As Label

    ' This method is identified by the ConnectionConsumer 
    ' attribute, and is the mechanism for connecting with 
    ' the provider. 
    <ConnectionConsumer("Zip Code Consumer", "ZipCodeConsumer")> _
    Public Sub GetIZipCode(ByVal Provider As IZipCode)
      _provider = Provider
    End Sub


    Protected Overrides Sub OnPreRender(ByVal e As EventArgs)
      EnsureChildControls()

      If Not (Me._provider Is Nothing) Then
        _zipSearch = _provider.ZipCode.Trim()
                DisplayContent.Text = "My Zip Code is:  " + _zipSearch
      End If

    End Sub

    Protected Overrides Sub CreateChildControls()
      Controls.Clear()
      DisplayContent = New Label()
      Me.Controls.Add(DisplayContent)

    End Sub

  End Class

End Namespace

Třetí částí příkladu kódu je stránka předlohy. Měli byste vzít následující zdrojový kód a uložit ho do souboru, pojmete ho MasterPageCS.master nebo MasterPageVB.master (v závislosti na tom, který jazyk používáte). Všimněte si, že stránka předlohy obsahuje direktivu Register pro registraci uživatelského ovládacího prvku a odkazuje na samotný uživatelský ovládací prvek v těle stránky. Stránka předlohy také deklaruje jeden <asp:webpartmanager> prvek použitý pro tuto stránku a všechny související stránky obsahu. Nakonec má <asp: contentplaceholder> stránka předlohy prvek, který deklaruje bod na stránce, kde je stránka obsahu vložena.

<%@ Master Language="C#" %>
<%@ register tagprefix="uc1" 
    tagname="DisplayModeMenuCS"
    src="~/displaymodemenucs.ascx" %>
    
<!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>Master page with connections in content pages</title>
</head>
<body>
    <h2>Contoso, Ltd.</h2>
    <hr />
    <form id="form1" runat="server">
    <asp:webpartmanager runat="server" id="WebPartManager1" />
    <uc1:displaymodemenucs id="menu1" runat="server" />
    <div>
        <asp:contentplaceholder id="ContentPlaceHolder1" 
          runat="server" />
    </div>
    </form>
</body>
</html>
<%@ Master Language="VB" %>
<%@ register tagprefix="uc1" 
    tagname="DisplayModeMenuVB"
    src="~/displaymodemenuvb.ascx" %>
    
<!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>Master page with connections in content pages</title>
</head>
<body>
    <h2>Contoso, Ltd.</h2>
    <hr />
    <form id="form1" runat="server">
    <asp:webpartmanager runat="server" id="WebPartManager1" />
    <uc1:displaymodemenuvb id="menu1" runat="server" />
    <div>
        <asp:contentplaceholder id="ContentPlaceHolder1" 
          runat="server" />
    </div>
    </form>
</body>
</html>

Čtvrtá část příkladu kódu je stránka obsahu. Měli byste zkopírovat následující zdrojový kód a uložit ho do souboru s příponou .aspx. Všimněte si, že její Page direktiva MasterFile obsahuje atribut odkazující na stránku předlohy. Tato stránka má také direktivu Register pro registraci souboru ve složce App_Code, která obsahuje dynamicky kompilované vlastní WebPart ovládací prvky, které se účastní připojení. <asp:content> V rámci značek stránky existuje <asp:proxywebpartmanager> prvek s podřízeným <staticconnections> prvkem, který má podřízený <asp:webpartconnection> prvek pro deklaraci podrobností připojení. <script> V rámci značek na stránce metoda přidá kód, Button1_Click který přistupuje k hlavnímu WebPartManager ovládacímu prvku na stránce předlohy a ovládacímu ProxyWebPartManager prvku na stránce obsahu a zapíše některé z jejich podrobností na stránku.

<%@ Page Language="C#" MasterPageFile="~/MasterPageCS.master" 
  Title="Connections Page" %>
<%@ Register TagPrefix="aspSample" 
    Namespace="Samples.AspNet.CS.Controls" %>

<script runat="server">

  protected void Button1_Click(object sender, EventArgs e)
  {
    StringBuilder lblText = new StringBuilder();
    
    if (Page.Master.FindControl("WebPartManager1") != null)
    {
      WebPartManager theMgr = 
        (WebPartManager)Page.Master.FindControl("WebPartManager1");
      lblText.Append("WebPartManager:  <br /><pre>" +
        "  Master page file is " + Page.MasterPageFile + "<br />" +
        "  ID is " + theMgr.ID + "<br />" +
        "  Connection count is " +
           theMgr.StaticConnections.Count.ToString() + "<br />" +
        "  WebParts count is " +
           theMgr.WebParts.Count.ToString() + "</pre><br />");
    }

    if (proxymgr1 != null)
    {
      lblText.Append("ProxyWebPartManager:  <br /><pre>" +
        "  Content page file is " + Request.Path + "<br />" +
        "  ID is " + proxymgr1.ID + "<br />" +
        "  Connection count is " +
           proxymgr1.StaticConnections.Count.ToString() + 
           "</pre><br />");
    }

    Literal1.Text = lblText.ToString();
    
  }
  
</script>

<asp:Content ID="Content1" Runat="Server" 
  ContentPlaceHolderID="ContentPlaceHolder1" >
 
  <asp:proxywebpartmanager id="proxymgr1" runat="server">
    <staticconnections>
      <asp:webpartconnection id="connection1" 
        consumerconnectionpointid="ZipCodeConsumer"
        consumerid="zipConsumer"
        providerconnectionpointid="ZipCodeProvider" 
        providerid="zipProvider" />
    </staticconnections>    
  </asp:proxywebpartmanager>

  <div>
  <asp:webpartzone id="zone1" runat="server">
    <zonetemplate>
      <aspsample:zipcodewebpart id="zipProvider" runat="server" 
        title="Zip Code Provider"  />
      <aspsample:weatherwebpart id="zipConsumer" runat="server" 
        title="Zip Code Consumer" />
    </zonetemplate>
  </asp:webpartzone>
  </div>
  
  <div>
  <asp:button id="Button1" runat="server" 
    text="WebPartManager Information" onclick="Button1_Click" />
  <br />
  
  </div>
  
  <asp:connectionszone id="ConnectionsZone1" runat="server" />
  <asp:literal id="Literal1" runat="server" />

</asp:Content>
<%@ Page Language="VB" MasterPageFile="~/MasterPageVB.master" 
  Title="Connections Page" %>
<%@ Register TagPrefix="aspSample" 
    Namespace="Samples.AspNet.VB.Controls" %>

<script runat="server">

  Protected Sub Button1_Click(ByVal sender As Object, _
    ByVal e As EventArgs)

    Dim lblText As StringBuilder = New StringBuilder()

    If Not (Page.Master.FindControl("WebPartManager1") Is Nothing) Then
      Dim theMgr As WebPartManager = _
        CType(Page.Master.FindControl("WebPartManager1"), WebPartManager)
      lblText.Append("WebPartManager:  <br /><pre>" & _
        "  Master page file is " & Page.MasterPageFile & "<br />" & _
        "  ID is " & theMgr.ID & "<br />" & _
        "  Connection count is " & _
           theMgr.StaticConnections.Count.ToString() & "<br />" & _
        "  WebParts count is " & _
           theMgr.WebParts.Count.ToString() & "</pre><br />")
    End If

    If Not (proxymgr1 Is Nothing) Then
      lblText.Append("ProxyWebPartManager:  <br /><pre>" & _
        "  Content page file is " & Request.Path & "<br />" & _
        "  ID is " & proxymgr1.ID & "<br />" & _
        "  Connection count is " & _
           proxymgr1.StaticConnections.Count.ToString() & "</pre><br />")
    End If

    Literal1.Text = lblText.ToString()
    
  End Sub

</script>

<asp:Content ID="Content1" Runat="Server" 
  ContentPlaceHolderID="ContentPlaceHolder1" >

  <asp:proxywebpartmanager id="proxymgr1" runat="server">
    <staticconnections>
      <asp:webpartconnection id="connection1" 
        consumerconnectionpointid="ZipCodeConsumer"
        consumerid="zipConsumer"
        providerconnectionpointid="ZipCodeProvider" 
        providerid="zipProvider" />
    </staticconnections>    
  </asp:proxywebpartmanager>

  <div>
  <asp:webpartzone id="zone1" runat="server">
    <zonetemplate>
      <aspsample:zipcodewebpart id="zipProvider" runat="server" 
        title="Zip Code Provider"  />
      <aspsample:weatherwebpart id="zipConsumer" runat="server" 
        title="Zip Code Consumer" />
    </zonetemplate>
  </asp:webpartzone>
  </div>
  
  <div>
  <asp:button id="Button1" runat="server" 
    text="WebPartManager Information" onclick="Button1_Click" />
  <br />
  <asp:literal id="Literal1" runat="server" />
  </div>
  
  <asp:connectionszone id="ConnectionsZone1" runat="server" />
  
</asp:Content>

Po načtení stránky v prohlížeči klikněte na tlačítko Informace WebPartManager a sledujte informace o ovládacím WebPartManager prvku na stránce předlohy a ProxyWebPartManager ovládací prvek na stránce obsahu. Všimněte si například, že oba mají stejný počet ve svých odpovídajících vlastnostech, které sledují statická připojení ( StaticConnections vlastnost). Všimněte si také, že i když WebPartManagerWebParts ovládací prvek vlastnost, která sleduje počet ovládacích WebPart prvků, které spravuje, ProxyWebPartManager ovládací prvek nemá žádnou takovou vlastnost, protože jeho jediným účelem je obsahovat statická připojení.

Poznámky

Ovládací ProxyWebPartManager prvek existuje pro konkrétní scénář deklarování statických připojení na stránkách obsahu, pokud WebPartManager již byl ovládací prvek deklarován na stránce předlohy.

Webová stránka, která používá ovládací prvky webových částí, musí obsahovat jeden (a pouze jeden) WebPartManager ovládací prvek, který spravuje všechny ovládací prvky webových částí na stránce. Když aplikace webových částí používá stránky předlohy, je běžné umístit WebPartManager ovládací prvek na stránku předlohy, protože všechny stránky obsahu jsou sloučeny se stránkou předlohy za běhu a jediný WebPartManager ovládací prvek bude spravovat všechny ovládací prvky webových částí ze všech stránek obsahu. Pokud ale vývojáři chtějí deklarovat statická připojení na stránkách obsahu takové aplikace, může se zdát, že čelí omezením. Připojení statických webových částí lze deklarovat pouze přidáním elementu <asp:webpartconnection> jako podřízeného <staticconnections> prvku, který sám musí být podřízeným prvkem <asp:webpartmanager> . Vzhledem k tomu, že WebPartManager ovládací prvek již byl deklarován na stránce předlohy a je to ten povolený WebPartManager ovládací prvek, nemůžou vývojáři deklarovat další WebPartManager ovládací prvky na stránkách obsahu, aby mohli přidat statická připojení.

Ovládací ProxyWebPartManager prvek se v tomto scénáři umisťuje WebPartManager na místo ovládacího prvku. Vývojáři deklarují <asp:proxywebpartmanager> prvek místo elementu <asp:webpartmanager> na svých stránkách obsahu a pak mohou deklarovat statická připojení jako podřízené prvky. V době běhu se připojení v ovládacím ProxyWebPartManager prvku jednoduše přidají do StaticConnections kolekce WebPartManager ovládacího prvku a považují se za jakékoli jiné připojení.

Vzhledem k tomu, že ovládací ProxyWebPartManager prvek se používá pouze v tomto konkrétním vývojovém scénáři, má omezenější funkce než WebPartManager třída. Ve skutečnosti, ačkoli ProxyWebPartManager ovládací prvek funguje jako proxy, který obsahuje statická připojení pro WebPartManager ovládací prvek na stránkách obsahu, nedědí z WebPartManager ovládacího prvku. Dědí přímo z Control třídy a přepíše pouze několik základních členů. Visible, EnableTheminga SkinID vlastnosti jsou přepsány a přiřazené hodnoty, které brání jejich použití. Další zděděné vlastnosti jsou přepsány tak, aby se upravilo jejich chování v době návrhu, ale jinak mají stejné chování jako základní vlastnosti. Patří mezi Controls ně vlastnosti a ClientID vlastnosti. Nakonec třída ProxyWebPartManager má jednu nezděděnou vlastnost. Tato StaticConnections vlastnost vrátí vlastní kolekci statických připojení (objekt).ProxyWebPartConnectionCollection

Pokud jde o metody, ProxyWebPartManager třída podobně přepíše pouze několik metod, většinou omezit jejich použití. Zděděná Focus metoda je nepoužitelná vyvoláním výjimky, pokud je volána. Metoda CreateControlCollection vždy vrátí prázdnou kolekci ovládacích prvků, která má vliv na to, aby nemohla obsahovat kolekci ovládacích prvků. OnInit Nakonec metoda volá základní metodu a pak přiřadí kolekci připojení odkazovaných StaticConnections vlastností na WebPartManager.StaticConnections vlastnost WebPartManager ovládacího prvku. To má vliv na postupné uvedení všech statických připojení deklarovaných na všech stránkách obsahu a jejich součástí kolekce připojení udržované ovládacím WebPartManager prvku na stránce předlohy.

Konstruktory

Name Description
ProxyWebPartManager()

Inicializuje novou instanci ProxyWebPartManager třídy.

Vlastnosti

Name Description
Adapter

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

(Zděděno od Control)
AppRelativeTemplateSourceDirectory

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

(Zděděno od Control)
BindingContainer

Získá ovládací prvek, který obsahuje datovou vazbu tohoto ovládacího prvku.

(Zděděno od Control)
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)
ClientID

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

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í oddělovač znak 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ý představuje podřízené ovládací prvky pro zadaný server ovládací prvek v hierarchii uživatelského rozhraní.

DataItemContainer

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

(Zděděno od Control)
DataKeysContainer

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

(Zděděno od Control)
DesignMode

Získá hodnotu určující, zda se ovládací prvek používá na návrhové ploše.

(Zděděno od Control)
EnableTheming

Přepíše základní vlastnost, aby se zabránilo použití motivů.

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, do žá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)
HasChildViewState

Získá hodnotu určující, zda aktuální serverový ovládací prvky podřízené ovládací prvky mají jakékoli uložené nastavení stavu zobrazení.

(Zděděno od Control)
ID

Získá nebo nastaví programový identifikátor přiřazený 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 určující, zda ovládací prvky obsažené v tomto ovládacím prvku mají stav ovládacího prvku.

(Zděděno od Control)
IsTrackingViewState

Získá hodnotu, která označuje, zda serverový ovládací prvek ukládá změny do jeho 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 určující, zda se ovládací prvek účastní načítání jeho stavu zobrazení namísto ID indexu.

(Zděděno od Control)
NamingContainer

Získá odkaz na kontejner pojmenování ovládacího prvku serveru, který vytvoří jedinečný obor názvů pro odlišné 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 nadřazený ovládací prvek ovládacího prvku serveru v hierarchii ovládacích prvků stránky.

(Zděděno od Control)
RenderingCompatibility

Získá hodnotu, která určuje ASP.NET verzi, která vykreslený KÓD HTML bude kompatibilní s.

(Zděděno od Control)
Site

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

(Zděděno od Control)
SkinID

Přepíše základní vlastnost, aby se zabránilo přiřazení hodnoty.

StaticConnections

Získá kolekci statických připojení deklarovaných v rámci <asp:proxywebpartmanager> elementu na stránce obsahu.

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 řízení.

(Zděděno od Control)
UniqueID

Získá jedinečný hierarchicky kvalifikovaný identifikátor pro ovládací prvek serveru.

(Zděděno od Control)
ValidateRequestMode

Získá nebo nastaví hodnotu, která urč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í ovládacího prvku serveru napříč několika požadavky na stejnou stránku.

(Zděděno od Control)
ViewStateIgnoresCase

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

(Zděděno od Control)
ViewStateMode

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

(Zděděno od Control)
Visible

Přepíše základní vlastnost, aby se zabránilo přiřazení hodnoty.

Metody

Name Description
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í serverový ovládací prvek, že byl analyzován element XML nebo HTML a přidá prvek do objektu ControlCollection ovládacího prvku serveru.

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

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

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

Začíná trasování doby návrhu vykreslovacích dat.

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

Shromažďuje informace o ovládacím prvku serveru a doručuje ho Trace vlastnosti, která se má zobrazit při povolení trasování stránky.

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

Nastaví hodnotu uloženou ClientID v mezipaměti na nullhodnotu .

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

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

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

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

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

Odstraní informace o stavu zobrazení pro všechny podřízené ovládací prvky ovládacího prvku 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)
CreateChildControls()

Volal ASP.NET stránkovací rámec, který informuje serverové ovládací prvky, které používají implementaci založenou na složení k vytvoření 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()

Přepíše základní vlastnost, aby ovládací prvek nemohl obsahovat ProxyWebPartManager ovládací prvky.

DataBind()

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

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

Vytvoří vazbu zdroje dat na vyvolaný 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()

Vytvoří vazbu zdroje dat k podřízeným ovládacím prvkům ovládacího prvku serveru.

(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í vykreslování dat v době návrhu.

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

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

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

Vytvoří identifikátor pro ovládací prvky, které nemají přiřazený identifikátor.

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

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

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

Vyhledá aktuální kontejner pojmenování pro ovládací prvek serveru se zadaným id a celé číslo zadané v parametru pathOffset , který pomáhá při hledání. Tuto verzi FindControl metody byste neměli přepsat.

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

Vyhledá aktuální kontejner pojmenování pro ovládací prvek serveru se zadaným id parametrem.

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

Přepíše základní metodu, aby se zabránilo zavolání metody.

GetDesignModeState()

Získá data v době návrhu pro ovládací prvek.

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

Slouží jako výchozí funkce hash.

(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ázvu trasy.

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

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

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

Získá Type aktuální instance.

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

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

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

Určuje, zda serverový ovládací prvek obsahuje jakékoli podřízené ovládací prvky.

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

Vrátí hodnotu urč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, zda ovládací prvek serveru obsahuje pouze literálový obsah.

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

Obnoví informace o stavu řízení z předchozího požadavku na stránku, který byla uložena metodou SaveControlState() .

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

Obnoví informace o stavu zobrazení z předchozí žádosti o stránku, která byla uložena metodou SaveViewState() .

(Zděděno od Control)
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 Object.

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

Určuje, zda je událost pro ovládací prvek serveru předána hierarchii ovládacích prvků 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 a inicializuje ovládací prvek.

OnLoad(EventArgs)

Load Vyvolá událost.

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

PreRender Vyvolá událost.

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

Unload Vyvolá událost.

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

Stream Získá použité 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ího 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)

Odešle obsah ovládacího prvku serveru do zadaného HtmlTextWriter objektu, který zapíše obsah, který se má vykreslit v klientovi.

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

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

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

Výstupy obsahu ovládacího prvku serveru do poskytnutého HtmlTextWriter objektu pomocí poskytnutého ControlAdapter objektu.

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

Výstupy obsahu ovládacího prvku serveru do zadaného HtmlTextWriter objektu a uloží informace o trasování ovládacího prvku, pokud je povoleno trasování.

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

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

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

Získá adresu URL, kterou může prohlížeč používat.

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

Převede adresu URL na adresu URL, která je použitelná u žádajícího klienta.

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

Uloží všechny změny stavu řízení serveru, ke kterým došlo od doby, kdy byla stránka odeslána zpět na server.

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

Uloží všechny změny stavu zobrazení serveru, ke kterým došlo od doby, kdy byla stránka odeslána zpět na server.

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

Nastaví data návrhu pro ovládací prvek.

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

Přiřadí delegáta obslužné rutiny události k vykreslení ovládacího prvku serveru a jeho obsahu do nadřazeného ovládacího prvku.

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

Nastaví trasovací data pro trasování doby návrhu vykreslovacích dat pomocí trasovaného objektu, klíče dat trasování a hodnoty dat trasování.

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

Nastaví data trasování pro trasování vykreslování dat v době návrhu pomocí 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í sledování změn stavu zobrazení v ovládacím prvku serveru, aby je bylo možné uložit do objektu StateBag ovládacího prvku serveru. Tento objekt je přístupný prostřednictvím ViewState vlastnosti.

(Zděděno od Control)

Událost

Name Description
DataBinding

Nastane, když ovládací prvek serveru vytvoří vazbu ke zdroji dat.

(Zděděno od Control)
Disposed

Nastane, když je serverový ovládací prvek uvolněn z paměti, což je poslední fáze životního cyklu řízení serveru při vyžádání ASP.NET stránky.

(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, když je serverový ovládací prvek načten 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, když je serverový ovládací prvek uvolněn z paměti.

(Zděděno od Control)

Explicitní implementace rozhraní

Name Description
IControlBuilderAccessor.ControlBuilder

Popis tohoto člena naleznete v tématu ControlBuilder.

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

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

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

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

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

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

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

Popis tohoto člena naleznete v tématu UserData.

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

Popis tohoto člena naleznete v tématu DataBindings.

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

Popis tohoto člena naleznete v tématu HasDataBindings.

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

Popis tohoto člena naleznete v tématu Expressions.

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

Popis tohoto člena naleznete v tématu HasExpressions.

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

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

(Zděděno od Control)

Metody rozšíření

Name Description
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 pojmenování zadaného ovládacího prvku.

FindMetaTable(Control)

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

Platí pro

Viz také