WebPartManager.DeleteWarning Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Bir denetimi sildiklerinde son kullanıcılara görüntülenen özel bir uyarı iletisini alır veya ayarlar.
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
Özellik Değeri
Uyarı iletisinin metnini içeren dize. Varsayılan değer, yerelleştirilmiş bir uyarı iletisidir.
Örnekler
Aşağıdaki kod örneği, özelliğinin DeleteWarning bildirim temelli ve programlı olarak kullanımını gösterir.
Kod örneğinin dört bölümü vardır:
Sayfa görüntüleme modlarını değiştirmenize olanak tanıyan bir kullanıcı denetimi.
Özel WebPart denetim.
Web sayfası.
Örneğin tarayıcıda nasıl çalıştığını gösteren açıklama.
Kod örneğinin ilk bölümü, görüntüleme modlarını değiştirmeye yönelik kullanıcı denetimidir. Kullanıcı denetimi için kaynak kodunu sınıfa genel bakışın Örnek bölümünden WebPartManager alabilirsiniz. Görüntüleme modları ve kullanıcı denetiminin nasıl çalıştığı hakkında daha fazla bilgi için bkz. İzlenecek Yol: Web Bölümleri Sayfasında Görüntüleme Modlarını Değiştirme.
Kod örneğinin ikinci bölümü özel WebPart denetimdir. Kod örneğinin çalışması için bu kaynak kodu derlemeniz gerekir. Bunu açıkça derleyebilir ve sonuçta elde edilen derlemeyi Web sitenizin Bin klasörüne veya genel derleme önbelleğine yerleştirebilirsiniz. Alternatif olarak, kaynak kodu sitenizin çalışma zamanında dinamik olarak derlenecek App_Code klasörüne yerleştirebilirsiniz. Bu örnekte dinamik derleme yaklaşımı kullanılır; bu nedenle, Web sayfasının en üstünde bu denetim için yönergesinde öznitelik Register
yokturAssembly
. Derlemeyi gösteren bir kılavuz için bkz. İzlenecek yol: Özel Web Sunucusu Denetimi Geliştirme ve Kullanma.
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
Kod örneğinin üçüncü bölümü Web sayfasıdır. Sayfa, WebPart kullanıcının çalışma zamanında sayfaya ekleyebilmesi için özel denetimin bölgede bildirildiğini belirten bir bölge içerirCatalogZone. Sayfadan yalnızca dinamik denetimlerin (bir sayfaya program aracılığıyla veya bunun gibi bir katalogdan eklenen denetimler) silinebileceğini unutmayın. Statik denetimler (sayfanın işaretlemesindeki bir WebPartZoneBase bölge içinde bildirilen denetimler) kapatılabilir, ancak hiçbir zaman silinmez.
<asp:webpartmanager>
öğesi özniteliğini DeleteWarning kullanarak DeleteWarning
özelliği için özel bir değer bildirir.
Button1_Click
yöntemi özelliğine DeleteWarning başka bir özel değer atar.
<%@ 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>
Sayfayı bir tarayıcıda yükledikten sonra, denetimi sayfaya eklemeniz WebPart gerekir.
Görüntü Modu açılan liste denetimini kullanarak katalog modunu seçin. Katalog görüntülendiğinde, özel denetimin yanındaki onay kutusunu seçin, sayfaya eklemek için Ekle'ye tıklayın ve ardından sayfayı göz atma moduna döndürmek için Kapat'a tıklayın. Artık denetim görünür olduğuna göre, denetimi silebilirsiniz.
Görüntü Modu denetimini yeniden kullanarak sayfayı tasarım moduna geçirin (sayfa göz atma modundayken denetimleri silemezsiniz). Denetimin üst bilgisindeki WebPart fiiller menüsüne (ok simgesi) tıklayın ve Sil'i seçin. Özniteliğinde DeleteWarning
ayarladığınız uyarı görüntülenir.
İptal'e tıklayın. Şimdi, özellik değerini program aracılığıyla değiştiren Silme Uyarısını Değiştir etiketli düğmeye tıklayın. Denetimdeki fiiller menüsünden Sil'i yeniden seçin ve bu kez diğer uyarı iletisinin göründüğüne dikkat edin.
Açıklamalar
Kullanıcı bir WebPart denetimi sildiğinde, normalde varsayılan bir uyarı iletisi görüntülenir. Bir denetimin bu örneği silindiğinde silme işleminin kalıcı olduğu konusunda kullanıcıyı uyarır. Sayfa geliştiricisi, kullanıcılara denetimin yeni bir örneğini sayfaya eklemenin bir yolunu sağlayabilir (örneğin, bir denetim kataloğu WebPart aracılığıyla veya program aracılığıyla), ancak silinen denetimin geçerli örneği kalıcı olarak kaldırılır. Uyarıyı görüntüleyen iletişim kutusu, kullanıcının isterseniz silme işlemini iptal etmesine yönelik bir düğme içerir.
DeleteWarning özelliği, geliştiricilerin kullanıcıya görüntülenen uyarı iletisini ayarlamasına olanak tanır.
Sayfa geliştiricisi bu özelliğe boş bir dize ("") değeri atarsa, kullanıcı denetimi sildiğinde WebPart hiçbir uyarı iletisi iletişim kutusu gösterilmez.
Not
DeleteWarning Statik denetimler ve sunucu denetimleri söz konusu olduğunda WebPart özelliği görüntülenmez. Statik denetimler, Web sayfasının işaretlemesindeki bir WebPartZoneBase bölge içinde bildirilen sunucu denetimleridir. Bu tür denetimler statik olduğundan silinemezler, bu nedenle silme uyarı iletisi bu durumda hiçbir zaman görüntülenmez. Statik denetimler bir kullanıcı tarafından kapatılabilir, ancak kapalı bir denetim sayfa kataloğuna eklenir ve bu denetimden bir kullanıcı tarafından sayfaya geri eklenebilir, ancak silinen denetim hiçbir zaman kurtarılamaz.