WebPartManager.GetGenericWebPart(Control) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
サーバー コントロールが含まれた GenericWebPart コントロールのインスタンスへの参照を取得します。
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
パラメーター
- control
- Control
WebPartZoneBase 内に存在し、実行時に GenericWebPart の子コントロールとしてラップされるサーバー コントロール。
戻り値
control
を子コントロールとしてラップする GenericWebPart。 このメソッドは、GenericWebPart に control
が含まれていない場合は null
を返します。
例外
control
が null
です。
例
次のコード例は、 メソッドの使用方法を GetGenericWebPart 示しています。 コード例には、ゾーン内で Calendar 宣言されたコントロールが WebPartZone 含まれています。 メソッドは Button1_Click
、最初にコントロールの Calendar ID をラベルに出力し、 メソッドを GetGenericWebPart 使用してカレンダーをラップするコントロールへの GenericWebPart 参照を取得します。 コントロールの GenericWebPart ID と子コントロールの ID (コントロール) は、どちらも 2 番目の Calendar ラベルに出力されます。
<%@ 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>
注釈
一般に、開発者が Web パーツ アプリケーションWebPartに参加するためにゾーンにWebPartZoneBase配置するコントロールには、基本クラスからWebPart継承されるコントロールと、標準の ASP.NET コントロール、カスタム コントロール、またはユーザー コントロールなどのサーバー コントロールの 2 つのカテゴリがあります。 これらのコントロールのいずれかがゾーンに WebPartZoneBase 配置されると、コントロールの機能が WebPart 使用されます。 WebPartコントロールには本質的にこの機能がありますが、他の種類のサーバー コントロールでは機能しません。 他のサーバー コントロールがゾーンに配置WebPartZoneBaseされたときにコントロールとしてWebPart機能できるようにするには、コントロール ASP.NET ラップしますGenericWebPart。 コントロールは GenericWebPart クラスから WebPart 直接継承されるため、子コントロールに真の Web パーツ機能が提供されます。
多くの場合、実行時にページ開発者は、ゾーン内のサーバー コントロールの 1 つを含むコントロールへの GenericWebPart 参照を取得することが必要になる場合があります。 GetGenericWebPartメソッドを使用すると、コントロールへのGenericWebPart参照を取得できます。
適用対象
こちらもご覧ください
.NET