Bagikan melalui


WebPartManager.DeleteWarning Properti

Definisi

Mendapatkan atau mengatur pesan peringatan kustom yang ditampilkan kepada pengguna akhir saat mereka menghapus kontrol.

public:
 virtual property System::String ^ DeleteWarning { System::String ^ get(); void set(System::String ^ value); };
public virtual string DeleteWarning { get; set; }
member this.DeleteWarning : string with get, set
Public Overridable Property DeleteWarning As String

Nilai Properti

String yang berisi teks pesan peringatan. Nilai default adalah pesan peringatan yang dilokalkan.

Contoh

Contoh kode berikut menunjukkan penggunaan DeleteWarning properti secara deklaratif dan terprogram.

Ada empat bagian untuk contoh kode:

  • Kontrol pengguna yang memungkinkan Anda mengubah mode tampilan halaman.

  • Kontrol kustom WebPart .

  • Halaman Web.

  • Penjelasan tentang cara kerja contoh di browser.

Bagian pertama dari contoh kode adalah kontrol pengguna untuk mengubah mode tampilan. Anda dapat memperoleh kode sumber untuk kontrol pengguna dari bagian Contoh dari WebPartManager gambaran umum kelas. Untuk informasi selengkapnya tentang mode tampilan dan cara kerja kontrol pengguna, lihat Panduan: Mengubah Mode Tampilan pada Halaman Bagian Web.

Bagian kedua dari contoh kode adalah kontrol kustom WebPart . Agar contoh kode berjalan, Anda harus mengkompilasi kode sumber ini. Anda dapat mengkompilasinya secara eksplisit dan meletakkan rakitan yang dihasilkan di folder Bin situs Web Anda atau cache perakitan global. Atau, Anda dapat meletakkan kode sumber di folder App_Code situs Anda, di mana kode tersebut akan dikompilasi secara dinamis pada durasi. Contoh ini menggunakan pendekatan kompilasi dinamis; dengan demikian tidak Assembly ada atribut dalam direktif Register untuk kontrol ini di bagian atas halaman Web. Untuk panduan yang menunjukkan cara mengkompilasi, lihat Panduan: Mengembangkan dan Menggunakan Kontrol Server Web Kustom.

using System;
using System.Collections;
using System.ComponentModel;
using System.Drawing;
using System.Security.Permissions;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;

namespace Samples.AspNet.CS.Controls
{
  [AspNetHostingPermission(SecurityAction.Demand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  [AspNetHostingPermission(SecurityAction.InheritanceDemand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  public class TextDisplayWebPart : WebPart
  {
    private String _contentText = null;
    TextBox input;
    Label DisplayContent;
    Literal lineBreak;

    [Personalizable(), WebBrowsable]
    public String ContentText
    {
      get { return _contentText; }
      set { _contentText = value; }
    }

    protected override void CreateChildControls()
    {
      Controls.Clear();
      DisplayContent = new Label();
      DisplayContent.BackColor = Color.LightBlue;
      DisplayContent.Text = this.ContentText;
      this.Controls.Add(DisplayContent);

      lineBreak = new Literal();
      lineBreak.Text = @"<br />";
      Controls.Add(lineBreak);

      input = new TextBox();
      this.Controls.Add(input);
      Button update = new Button();
      update.Text = "Set Label Content";
      update.Click += new EventHandler(this.submit_Click);
      this.Controls.Add(update);
    }

    private void submit_Click(object sender, EventArgs e)
    {
      // Update the label string.
      if (!string.IsNullOrEmpty(input.Text))
      {
        _contentText = input.Text + @"<br />";
        input.Text = String.Empty;
        DisplayContent.Text = this.ContentText;
      }
    }
  }
}
Imports System.Collections
Imports System.ComponentModel
Imports System.Drawing
Imports System.Security.Permissions
Imports System.Web
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 Class TextDisplayWebPart
    Inherits WebPart
    Private _contentText As String = Nothing
    Private _fontStyle As String = Nothing
    Private input As TextBox
    Private DisplayContent As Label
    Private lineBreak As Literal

    <Personalizable(), WebBrowsable()> _
    Public Property ContentText() As String
      Get
        Return _contentText
      End Get
      Set(ByVal value As String)
        _contentText = value
      End Set
    End Property

    Protected Overrides Sub CreateChildControls()
      Controls.Clear()
      DisplayContent = New Label()
      DisplayContent.BackColor = Color.LightBlue
      DisplayContent.Text = Me.ContentText
      Me.Controls.Add(DisplayContent)

      lineBreak = New Literal()
      lineBreak.Text = "<br />"
      Controls.Add(lineBreak)

      input = New TextBox()
      Me.Controls.Add(input)
      Dim update As New Button()
      update.Text = "Set Label Content"
      AddHandler update.Click, AddressOf Me.submit_Click
      Me.Controls.Add(update)

    End Sub

    Private Sub submit_Click(ByVal sender As Object, _
                             ByVal e As EventArgs)
      ' Update the label string.
      If input.Text <> String.Empty Then
        _contentText = input.Text + "<br />"
        input.Text = String.Empty
        DisplayContent.Text = Me.ContentText
      End If

    End Sub

  End Class

End Namespace

Bagian ketiga dari contoh kode adalah halaman Web. Halaman berisi CatalogZone zona, dengan kontrol kustom WebPart yang dideklarasikan di zona tersebut, sehingga pengguna dapat menambahkannya ke halaman pada durasi. Perhatikan bahwa hanya kontrol dinamis (kontrol yang ditambahkan ke halaman secara terprogram atau dari katalog seperti ini) yang dapat dihapus dari halaman. Kontrol statis (kontrol yang dideklarasikan dalam WebPartZoneBase zona di markup halaman) dapat ditutup, tetapi tidak pernah dihapus. Elemen <asp:webpartmanager> mendeklarasikan nilai kustom untuk DeleteWarning properti dengan menggunakan DeleteWarning atribut . Metode menetapkan Button1_Click nilai kustom lain ke DeleteWarning properti .

<%@ Page Language="C#" %>
<%@ Register TagPrefix="uc1" 
    TagName="DisplayModeMenuCS"
    Src="~/DisplayModeMenuCS.ascx" %>
<%@ Register TagPrefix="aspSample" 
    Namespace="Samples.AspNet.CS.Controls"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
  
  const String NewWarning = @"If you delete this WebPart " + 
    "control instance, it will be permanently removed and " +
    "cannot be retrieved.  Do you still want to delete it?";
    
  protected void Button1_Click(object sender, EventArgs e)
  {
    mgr1.DeleteWarning = NewWarning;
  }

  // Hide the button to change the property when there is
  // no control available to delete.
  protected void Page_Load(object sender, EventArgs e)
  {
    if (WebPartZone1.WebParts.Count == 0)
      Button1.Visible = false;
    else
      Button1.Visible = true;
  }
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
      <asp:WebPartManager ID="mgr1" runat="server" 
        DeleteWarning="Do you want to delete this control?" />
      <uc1:DisplayModeMenuCS ID="menu1" runat="server" />
      <h2>Delete Warning Example Page</h2>
      <asp:WebPartZone ID="WebPartZone1" runat="server" />
      <asp:CatalogZone ID="CatalogZone1" runat="server">
        <ZoneTemplate>
          <asp:DeclarativeCatalogPart 
            ID="DeclarativeCatalogPart1" 
            runat="server">
            <WebPartsTemplate>
              <aspSample:TextDisplayWebPart ID="text1" 
                runat="server" 
                Title="My Text WebPart" />
             </WebPartsTemplate>
          </asp:DeclarativeCatalogPart>  
        </ZoneTemplate>
      </asp:CatalogZone>
      <asp:Button ID="Button1" runat="server" 
        Text="Change Delete Warning" 
        OnClick="Button1_Click" />
    </form>
</body>
</html>
<%@ Page Language="vb" %>
<%@ Register TagPrefix="uc1" 
    TagName="DisplayModeMenuVB"
    Src="~/DisplayModeMenuVB.ascx" %>
<%@ Register TagPrefix="aspSample" 
    Namespace="Samples.AspNet.VB.Controls"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
  
  Private Const NewWarning As String = "If you delete this WebPart " & _
    "control instance, it will be permanently removed and " & _
    "cannot be retrieved.  Do you still want to delete it?"

  Protected Sub Button1_Click(ByVal sender As Object, _
    ByVal e As System.EventArgs)
    
    mgr1.DeleteWarning = NewWarning

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

    If WebPartZone1.WebParts.Count = 0 Then
      Button1.Visible = False
    Else
      Button1.Visible = True
    End If
    
  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
      <asp:WebPartManager ID="mgr1" runat="server" 
        DeleteWarning="Do you want to delete this control?" />
      <uc1:DisplayModeMenuVB ID="menu1" runat="server" />
      <h2>Delete Warning Example Page</h2>
      <asp:WebPartZone ID="WebPartZone1" runat="server" />
      <asp:CatalogZone ID="CatalogZone1" runat="server">
        <ZoneTemplate>
          <asp:DeclarativeCatalogPart 
            ID="DeclarativeCatalogPart1" 
            runat="server">
            <WebPartsTemplate>
              <aspSample:TextDisplayWebPart ID="text1" 
                runat="server" 
                Title="My Text WebPart" />
             </WebPartsTemplate>
          </asp:DeclarativeCatalogPart>  
        </ZoneTemplate>
      </asp:CatalogZone>
      <asp:Button ID="Button1" runat="server" 
        Text="Change Delete Warning" 
         OnClick="Button1_Click" />
    </form>
</body>
</html>

Setelah memuat halaman di browser, Anda perlu menambahkan WebPart kontrol ke halaman. Menggunakan kontrol daftar drop-down Mode Tampilan , pilih mode katalog. Saat katalog muncul, pilih kotak centang di samping kontrol kustom, klik Tambahkan untuk menambahkannya ke halaman, lalu klik Tutup untuk mengembalikan halaman untuk menelusuri mode. Setelah kontrol terlihat, Anda dapat menghapusnya. Menggunakan kontrol Mode Tampilan lagi, alihkan halaman ke mode desain (Anda tidak dapat menghapus kontrol saat halaman dalam mode telusuri). Klik menu kata kerja (simbol panah) di header WebPart kontrol, dan pilih Hapus. Peringatan yang Anda tetapkan pada DeleteWarning atribut muncul. Klik Batalkan. Sekarang klik tombol berlabel Ubah Hapus Peringatan, yang mengubah nilai properti secara terprogram. Dari menu kata kerja pada kontrol, pilih Hapus lagi, dan perhatikan bahwa kali ini pesan peringatan lainnya muncul.

Keterangan

Saat pengguna menghapus WebPart kontrol, biasanya pesan peringatan default ditampilkan. Ini memperingatkan pengguna bahwa ketika instans kontrol ini dihapus, penghapusan bersifat permanen. Pengembang halaman mungkin memberi pengguna cara untuk menambahkan instans kontrol baru ke halaman (seperti melalui katalog WebPart kontrol, atau melalui beberapa cara terprogram), tetapi instans kontrol saat ini yang dihapus dihapus secara permanen. Kotak dialog yang menampilkan peringatan menyertakan tombol bagi pengguna untuk membatalkan penghapusan, jika diinginkan.

Properti DeleteWarning memungkinkan pengembang untuk mengatur pesan peringatan yang ditampilkan kepada pengguna.

Jika pengembang halaman menetapkan nilai string kosong ("") ke properti ini, tidak ada kotak dialog pesan peringatan yang akan ditampilkan saat pengguna menghapus WebPart kontrol.

Catatan

Properti DeleteWarning tidak ditampilkan dalam kasus kontrol statis WebPart dan kontrol server. Kontrol statis adalah kontrol server yang dideklarasikan dalam WebPartZoneBase zona dalam markup halaman Web. Karena kontrol tersebut statis, kontrol tersebut tidak dapat dihapus, sehingga pesan peringatan penghapusan tidak pernah ditampilkan dalam kasus tersebut. Kontrol statis dapat ditutup oleh pengguna, tetapi kontrol tertutup ditambahkan ke katalog halaman, tempat kontrol tersebut dapat ditambahkan kembali ke halaman oleh pengguna, sedangkan kontrol yang dihapus tidak pernah dapat dipulihkan.

Berlaku untuk

Lihat juga