Aracılığıyla paylaş


WebPartManager.DeleteWebPart(WebPart) Yöntem

Tanım

Web sayfasından bir WebPart denetimin dinamik örneğini kalıcı olarak kaldırır.

public:
 void DeleteWebPart(System::Web::UI::WebControls::WebParts::WebPart ^ webPart);
public void DeleteWebPart (System.Web.UI.WebControls.WebParts.WebPart webPart);
member this.DeleteWebPart : System.Web.UI.WebControls.WebParts.WebPart -> unit
Public Sub DeleteWebPart (webPart As WebPart)

Parametreler

webPart
WebPart

Silinecek sunucu denetimi.

Örnekler

Aşağıdaki kod örneğinde yönteminin nasıl kullanılacağı gösterilmektedir DeleteWebPart . Takvim Ekle düğmesine ilk kez tıklandığında, olay işleyicisindeki kod bir Calendar denetim oluşturur ve bunu bir bölgeye nesne olarak GenericWebPart ekler. Denetim program aracılığıyla eklendiğinden, dinamik bir denetimdir ve bu nedenle silinebilir. Kullanıcı Takvimi Sil düğmesine tıkladığında, kod denetimin var olduğundan emin olur ve ardından yöntemini çağırarak DeleteWebPart siler.

<%@ 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 Button2_Click(object sender, EventArgs e)
  {
    WebPartManager mgr = WebPartManager1;
    Calendar cal = new Calendar();
    cal.ID = "cal1";
    GenericWebPart calWebPart = mgr.CreateWebPart(cal);
    mgr.AddWebPart(calWebPart, WebPartZone1, 1);
  }

  protected void Button1_Click(object sender, EventArgs e)
  {
    if (WebPartZone1.WebParts.Count > 1)
    {
      WebPart cal = WebPartZone1.WebParts[1];
      if (cal.Controls[0].GetType().Name == "Calendar" 
        && cal != null)
        WebPartManager1.DeleteWebPart(cal);
    }

  }
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Adding a Server Control</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
      <asp:WebPartManager ID="WebPartManager1" 
        runat="server" />
      <asp:WebPartZone ID="WebPartZone1" runat="server">
        <ZoneTemplate>
          <asp:BulletedList  
            DisplayMode="HyperLink" 
            ID="BulletedList1" 
            runat="server"
            Title="My Links">
            <asp:ListItem Value="http://www.microsoft.com">
            Microsoft
            </asp:ListItem>
            <asp:ListItem Value="http://www.msn.com">
            MSN
            </asp:ListItem>
            <asp:ListItem Value="http://www.contoso.com">
            Contoso Corp.
            </asp:ListItem>
          </asp:BulletedList>
        </ZoneTemplate>
      </asp:WebPartZone>
      <asp:Button ID="Button1" runat="server" 
        Text="Delete Calendar" 
        OnClick="Button1_Click" />
      <asp:Button ID="Button2" runat="server" 
        Text="Add Calendar" 
        OnClick="Button2_Click" />
    </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 Button2_Click(ByVal sender As Object, _
    ByVal e As System.EventArgs)
    Dim mgr As WebPartManager = WebPartManager1
    Dim cal As New Calendar()
    cal.ID = "cal1"
    Dim calWebPart As GenericWebPart = mgr.CreateWebPart(cal)
    mgr.AddWebPart(calWebPart, WebPartZone1, 1)
  End Sub

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

    If WebPartZone1.WebParts.Count > 1 Then
      Dim cal As WebPart = WebPartZone1.WebParts(1)
      If cal.Controls(0).GetType().Name = "Calendar" AndAlso _
        cal IsNot Nothing Then
        WebPartManager1.DeleteWebPart(cal)
      End If
    End If
  End Sub
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>Adding a Server Control</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
      <asp:WebPartManager ID="WebPartManager1" 
        runat="server" />
      <asp:WebPartZone ID="WebPartZone1" runat="server">
        <ZoneTemplate>
          <asp:BulletedList  
            DisplayMode="HyperLink" 
            ID="BulletedList1" 
            runat="server"
            Title="My Links">
            <asp:ListItem Value="http://www.microsoft.com">
            Microsoft
            </asp:ListItem>
            <asp:ListItem Value="http://www.msn.com">
            MSN
            </asp:ListItem>
            <asp:ListItem Value="http://www.contoso.com">
            Contoso Corp.
            </asp:ListItem>
          </asp:BulletedList>
        </ZoneTemplate>
      </asp:WebPartZone>
      <asp:Button ID="Button1" runat="server" 
        Text="Delete Calendar" 
        OnClick="Button1_Click" />
      <asp:Button ID="Button2" runat="server" 
        Text="Add Calendar" 
        OnClick="Button2_Click" />
    </div>
    </form>
</body>
</html>

Açıklamalar

yöntemi, DeleteWebPart parametresi tarafından temsil edilen denetimi bir sayfadan webPart kalıcı olarak kaldırır. Denetime eklenen ve sayfaya geri eklenebilen PageCatalogPart kapalı denetimden farklı olarak, silinen bir denetim örneği hiçbir zaman sayfaya geri eklenemez.

Not

Web Bölümleri denetim kümesi tarafından uygulandığı gibi, kullanıcıların dinamik WebPart denetimi silme özelliği kullanıcıya ve denetimin bir sayfaya eklendiği kişiselleştirme kapsamına bağlıdır. Denetim, sayfa paylaşılan kapsamdayken (izinleri olan bir kullanıcı tarafından) eklenirse, sayfa kullanıcı kapsamındayken denetim tek tek kullanıcılar tarafından silinemez.

Yalnızca dinamik denetimler silinebilir. Dinamik denetimler bir sayfaya program aracılığıyla veya katalogdan denetim ekleyen kullanıcılar tarafından eklenir. Statik denetimler sayfaya işaretleme veya kalıcılık biçiminde bildirim temelli olarak eklenir. Bildirim temelli etiketler işaretlemede kalıcı olarak bulunduğundan statik denetimler hiçbir zaman silinemez, ancak kapatılıp yeniden açılabilir.

Şunlara uygulanır

Ayrıca bkz.