WebPartManager.GetGenericWebPart(Control) Methode

Definitie

Hiermee wordt een verwijzing opgehaald naar het exemplaar van het GenericWebPart besturingselement dat een serverbesturing bevat.

public:
 System::Web::UI::WebControls::WebParts::GenericWebPart ^ GetGenericWebPart(System::Web::UI::Control ^ control);
public System.Web.UI.WebControls.WebParts.GenericWebPart GetGenericWebPart(System.Web.UI.Control control);
member this.GetGenericWebPart : System.Web.UI.Control -> System.Web.UI.WebControls.WebParts.GenericWebPart
Public Function GetGenericWebPart (control As Control) As GenericWebPart

Parameters

control
Control

Een serverbesturing in een WebPartZoneBase en wordt verpakt als een onderliggend besturingselement van een GenericWebPart tijdens runtime.

Retouren

Een GenericWebPart die wordt verpakt als een onderliggend control besturingselement. De methode retourneert null als control deze niet is opgenomen in een GenericWebPart.

Uitzonderingen

control is null.

Voorbeelden

In het volgende codevoorbeeld ziet u het gebruik van de GetGenericWebPart methode. Het codevoorbeeld bevat een Calendar besturingselement dat is gedeclareerd binnen een WebPartZone zone. De Button1_Click methode drukt eerst de id van het Calendar besturingselement af op een label en gebruikt vervolgens de GetGenericWebPart methode om een verwijzing op te halen naar het GenericWebPart besturingselement dat de agenda verpakt. De id van het GenericWebPart besturingselement en de id van het onderliggende besturingselement (dit is het Calendar besturingselement), worden beide afgedrukt op een tweede label.

<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
 
  protected void Button1_Click(object sender, EventArgs e)
  {
    Label1.Text = "<h2>Server Control</h2>";
    Label1.Text += "Server Control ID:  " + Calendar1.ID;
    Label2.Text = "<h2>GenericWebPart Control</h2>";
    GenericWebPart part = mgr.GetGenericWebPart(Calendar1);
    if (part != null)
    {
      Label2.Text +=
        "GenericWebPart ID:  " + part.ID + "<br />";
      Label2.Text +=
        "Underlying Control ID: " + part.ChildControl.ID;
    }
  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
      <asp:WebPartManager ID="mgr" runat="server" />
      <asp:WebPartZone ID="WebPartZone1" runat="server">
        <ZoneTemplate>
          <asp:Calendar ID="Calendar1" runat="server"
            Title="My Calendar" />
        </ZoneTemplate>
      </asp:WebPartZone>
      <asp:Button ID="Button1" runat="server" 
        Text="Get GenericWebPart"
        OnClick="Button1_Click" />
      <hr />
      <asp:Label ID="Label1" runat="server" Text="" />
      <br />
      <asp:Label ID="Label2" runat="server" Text="" />
    </div>
    </form>
</body>
</html>
<%@ Page Language="vb" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
 
  Protected Sub Button1_Click(ByVal sender As Object, _
    ByVal e As System.EventArgs)
    
    Label1.Text = "<h2>Server Control</h2>"
    Label1.Text += "Server Control ID:  " + Calendar1.ID
    Label2.Text = "<h2>GenericWebPart Controls</h2>"
    Dim part As GenericWebPart
    part = mgr.GetGenericWebPart(Calendar1)
    If part IsNot Nothing Then
      Label2.Text += _
        "GenericWebPart ID:  " & part.ID & "<br />"
      Label2.Text += _
        "Underlying Control ID: " + part.ChildControl.ID
    End If
    
  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
      <asp:WebPartManager ID="mgr" runat="server" />
      <asp:WebPartZone ID="WebPartZone1" runat="server">
        <ZoneTemplate>
          <asp:Calendar ID="Calendar1" runat="server"
            Title="My Calendar" />
        </ZoneTemplate>
      </asp:WebPartZone>
      <asp:Button ID="Button1" runat="server" 
        Text="Get GenericWebPart"
        OnClick="Button1_Click" />
      <hr />
      <asp:Label ID="Label1" runat="server" Text="" />
      <br />
      <asp:Label ID="Label2" runat="server" Text="" />
    </div>
    </form>
</body>
</html>

Opmerkingen

Over het algemeen zijn er twee categorieƫn besturingselementen die ontwikkelaars in WebPartZoneBase zones plaatsen om deel te nemen aan webonderdelentoepassingen: WebPart besturingselementen, die overnemen van de WebPart basisklasse en andere serverbesturingselementen, die standaard kunnen zijn ASP.NET besturingselementen, aangepaste besturingselementen of gebruikersbesturingselementen. Wanneer een van deze besturingselementen in een WebPartZoneBase zone wordt geplaatst, wordt de functionaliteit van een WebPart besturingselement ingeschakeld. Een WebPart besturingselement heeft deze functionaliteit inherent, maar de andere soorten serverbesturingselementen niet. Als u wilt dat de andere serverbesturingselementen fungeren als WebPart besturingselementen wanneer ze in een WebPartZoneBase zone worden geplaatst, ASP.NET verpakt met een GenericWebPart besturingselement. Omdat het GenericWebPart besturingselement rechtstreeks van de WebPart klasse overneemt, biedt het de onderliggende besturingselementen met echte webonderdelenfuncties.

Vaak willen paginaontwikkelaars tijdens runtime een verwijzing krijgen naar het GenericWebPart besturingselement dat een van de serverbesturingselementen in een zone bevat. Met de GetGenericWebPart methode kunnen ze een verwijzing naar het GenericWebPart besturingselement ophalen.

Van toepassing op

Zie ook