ControlDesigner.ViewControl Ö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.
Tasarım zamanı HTML işaretlemesinin önizlemesini görüntülemek için kullanılabilecek bir Web sunucusu denetimi alır veya ayarlar.
public:
property System::Web::UI::Control ^ ViewControl { System::Web::UI::Control ^ get(); void set(System::Web::UI::Control ^ value); };
public System.Web.UI.Control ViewControl { get; set; }
member this.ViewControl : System.Web.UI.Control with get, set
Public Property ViewControl As Control
Özellik Değeri
Control Tasarım zamanı HTML işaretlemesi oluşturmak için temel sınıf tarafından kullanılan nesne.
Örnekler
Aşağıdaki kod örneği, bir denetim tasarımcısını özniteliğiyle işaretlemeyi SupportsPreviewControlAttribute gösterir. Kod örneği sınıfından Label bir Web sunucusu denetimi türetir ve denetimi özel denetim tasarımcısı uygulamasıyla ilişkilendirir. Denetim tasarımcısı sınıf bildirimi, özniteliği olarak SupportsPreviewControl
ayarlanmış true
olarak işaretlenir. Denetim tasarımcısı yöntemini geçersiz kılar GetDesignTimeHtml ve ardından denetimin Text özelliğini tasarım zamanında italik olarak görüntüler.
using System;
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Web.UI;
using System.Web.UI.Design;
using System.Web.UI.Design.WebControls;
using System.Web.UI.WebControls;
using System.Reflection;
namespace ControlDesignerSamples.CS
{
// Define a simple designer associated with a
// simple text web control.
// Mark the designer with the SupportsPreviewControlAttribute set
// to true. This means the base.UsePreviewControl returns true,
// and base.ViewControl returns a temporary preview copy of the control.
[SupportsPreviewControl(true)]
public class SimpleTextControlDesigner : TextControlDesigner
{
// Override the base GetDesignTimeHtml method to display
// the design time text in italics.
public override string GetDesignTimeHtml()
{
string html = String.Empty;
try
{
// Initialize the return string to the default
// design time html of the base TextControlDesigner.
html = base.GetDesignTimeHtml();
// Get the ViewControl for the associated control.
Label ctrl = (Label)ViewControl;
ctrl.Style.Add(HtmlTextWriterStyle.FontStyle, "Italic");
html = base.GetDesignTimeHtml();
}
catch (System.Exception e)
{
if (String.IsNullOrEmpty(html))
{
html = GetErrorDesignTimeHtml(e);
}
}
return html;
}
}
// Derive a simple Web control from Label to render a text string.
// Associate this control with the SimpleTextControlDesigner.
[DesignerAttribute("ControlDesignerSamples.CS.SimpleTextControlDesigner"),
ToolboxData("<{0}:MyLabelControl Runat=\"Server\"><{0}:MyLabelControl>")]
public class MyLabelControl : Label
{
// Use the Label control implementation, but associate
// the derived class with the custom control designer.
}
}
Imports System.ComponentModel
Imports System.ComponentModel.Design
Imports System.Web.UI
Imports System.Web.UI.Design
Imports System.Web.UI.Design.WebControls
Imports System.Web.UI.WebControls
Imports System.Reflection
Namespace ControlDesignerSamples.VB
' Derive a simple Web control from Label to render a text string.
' Associate this control with the SimpleTextControlDesigner.
<DesignerAttribute("ControlDesignerSamples.CS.SimpleTextControlDesigner"), _
ToolboxData("<{0}:MyLabelControl Runat=""Server""><{0}:MyLabelControl>")> _
Public Class MyLabelControl
Inherits Label
' Use the Label control implementation, but associate
' the derived class with the custom control designer.
End Class
' Mark the designer with the SupportsPreviewControlAttribute set
' to true. This means the base.UsePreviewControl returns true,
' and base.ViewControl returns a temporary preview copy of the control.
<SupportsPreviewControl(True)> _
Public Class SimpleTextControlDesigner
Inherits TextControlDesigner
' Override the base GetDesignTimeHtml method to display
' the design time text in italics.
Public Overrides Function GetDesignTimeHtml() As String
Dim html As String = String.Empty
Try
' Get the ViewControl for the associated control.
Dim ctrl As Label = CType(ViewControl, Label)
' Set the default text, if necessary
If ctrl.Text.Length = 0 Then
ctrl.Text = "Sample Text"
End If
' Set the style to italic
ctrl.Style.Add(HtmlTextWriterStyle.FontStyle, "italic")
' Let the base class create the HTML markup
html = MyBase.GetDesignTimeHtml()
Catch ex As Exception
If String.IsNullOrEmpty(html) Then
' Display the exception message
html = GetErrorDesignTimeHtml(ex)
End If
End Try
Return html
End Function
End Class
End Namespace
Açıklamalar
ViewControl özelliği, dönüş değerini belirlemek için özelliğini kullanırUsePreviewControl.
UsePreviewControl özelliği isetrue
, özelliği denetimin ViewControl geçici bir kopyasını döndürür. Geçici denetimde yapılan değişiklikler kalıcı olmaz.
UsePreviewControl özelliği isefalse
ViewControl, özelliği denetimi için özelliğin Component bir örneğini döndürür. Denetimin örneğinde yapılan değişiklikler kalıcıdır.
SupportsPreviewControl nesnesindeki SupportsPreviewControlAttribute ayar özelliğin değerini UsePreviewControl ayarlamak için kullanılır. Bu nedenle, SupportsPreviewControl ayarı temel ControlDesigner sınıfta özelliği tarafından ViewControl döndürülen denetim türünü belirler.
SupportsPreviewControlAttribute denetim tasarımcısı bildiriminde belirtilmezse, ControlDesigner nesne davranışı özelliğini olarak false
belirtmeye SupportsPreviewControl eşdeğerdir.