WebPartManager.GetGenericWebPart(Control) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft einen Verweis auf die Instanz des GenericWebPart-Steuerelements ab, die ein Serversteuerelement enthält.
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
Parameter
- control
- Control
Ein Serversteuerelement, das sich in einer WebPartZoneBase befindet und zur Laufzeit als untergeordnetes Steuerelement eines GenericWebPart umschlossen wird.
Gibt zurück
Ein GenericWebPart, der control
als untergeordnetes Steuerelement umschließt. Die Methode gibt null
zurück, wenn control
nicht in einem GenericWebPart enthalten ist.
Ausnahmen
control
ist null
.
Beispiele
Im folgenden Codebeispiel wird die Verwendung der GetGenericWebPart -Methode veranschaulicht. Das Codebeispiel enthält ein Calendar Innerhalb einer Zone deklariertes WebPartZone Steuerelement. Die Button1_Click
-Methode gibt zunächst die ID des Calendar Steuerelements in einer Bezeichnung aus und verwendet dann die GetGenericWebPart -Methode, um einen Verweis auf das Steuerelement abzurufen, das GenericWebPart den Kalender umschließt. Die ID des GenericWebPart Steuerelements und die ID des untergeordneten Steuerelements (bei dem es sich um das Calendar Steuerelement handelt), werden beide auf einer zweiten Bezeichnung gedruckt.
<%@ 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>
Hinweise
Im Allgemeinen gibt es zwei Kategorien von Steuerelementen, die Entwickler in WebPartZoneBase Zonen platzieren, um an Webparts-Anwendungen teilzunehmen: WebPart Steuerelemente, die von der WebPart Basisklasse erben, und andere Serversteuerelemente, bei denen es sich um Standardsteuerelemente ASP.NET, benutzerdefinierte Steuerelemente oder Benutzersteuerelemente handeln kann. Wenn eines dieser Steuerelemente in einer WebPartZoneBase Zone platziert wird, übernimmt es die Funktionalität eines WebPart Steuerelements. Ein WebPart Steuerelement verfügt über diese Funktionalität inhärent, aber die anderen Arten von Serversteuerelementen nicht. Damit die anderen Serversteuerelemente als WebPart Steuerelemente fungieren können, wenn sie in einer WebPartZoneBase Zone platziert werden, umschließt ASP.NET sie mit einem GenericWebPart -Steuerelement. Da das GenericWebPart Steuerelement direkt von der WebPart -Klasse erbt, stellt es seine untergeordneten Steuerelemente mit echten Webparts-Features bereit.
Häufig möchten Seitenentwickler zur Laufzeit einen Verweis auf das GenericWebPart Steuerelement abrufen, das eines der Serversteuerelemente in einer Zone enthält. Mit GetGenericWebPart der -Methode können sie einen Verweis auf das GenericWebPart -Steuerelement abrufen.