ImportCatalogPart Sınıf
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.
public ref class ImportCatalogPart sealed : System::Web::UI::WebControls::WebParts::CatalogPart
public sealed class ImportCatalogPart : System.Web.UI.WebControls.WebParts.CatalogPart
type ImportCatalogPart = class
inherit CatalogPart
Public NotInheritable Class ImportCatalogPart
Inherits CatalogPart
- Devralma
Örnekler
Aşağıdaki kod örneği, denetimin ImportCatalogPart Web sayfasında bildirim temelli ve programlı olarak nasıl kullanılacağını gösterir. Örnekte dört bölüm vardır:
Web Bölümleri sayfasındaki görüntüleme modlarını değiştirmenize olanak tanıyan bir kullanıcı denetimi.
Denetim ve denetim içeren bir CatalogZoneImportCatalogPart Web sayfası.
İki özel WebPart denetim içeren bir kaynak kod dosyası.
Sayfayı bir tarayıcıda yüklediğinizde örneğin nasıl çalıştığını gösteren bir açıklama.
Bu kod örneğinin ilk bölümü, kullanıcıların Web sayfasındaki görüntü modlarını değiştirmesine olanak tanıyan kullanıcı denetimidir. Aşağıdaki kaynak kodu bir dosyaya yerleştirmeniz ve displaymodemenucs.ascx veya Displaymodemenuvb.ascx olarak adlandırmanız gerekir (kullandığınız dile bağlı olarak). Bu denetimdeki görüntü modları ve kaynak kodun açıklaması hakkında ayrıntılı bilgi için bkz . İzlenecek Yol: Web Bölümleri Sayfasında Görüntüleme Modlarını Değiştirme.
<%@ control language="C#" classname="DisplayModeMenuCS"%>
<script runat="server">
// Use a field to reference the current WebPartManager.
WebPartManager _manager;
void Page_Init(object sender, EventArgs e)
{
Page.InitComplete += new EventHandler(InitComplete);
}
void InitComplete(object sender, System.EventArgs e)
{
_manager = WebPartManager.GetCurrentWebPartManager(Page);
String browseModeName = WebPartManager.BrowseDisplayMode.Name;
// Fill the dropdown with the names of supported display modes.
foreach (WebPartDisplayMode mode in _manager.SupportedDisplayModes)
{
String modeName = mode.Name;
// Make sure a mode is enabled before adding it.
if (mode.IsEnabled(_manager))
{
ListItem item = new ListItem(modeName, modeName);
DisplayModeDropdown.Items.Add(item);
}
}
// If shared scope is allowed for this user, display the scope-switching
// UI and select the appropriate radio button for the current user scope.
if (_manager.Personalization.CanEnterSharedScope)
{
Panel2.Visible = true;
if (_manager.Personalization.Scope == PersonalizationScope.User)
RadioButton1.Checked = true;
else
RadioButton2.Checked = true;
}
}
// Change the page to the selected display mode.
void DisplayModeDropdown_SelectedIndexChanged(object sender, EventArgs e)
{
String selectedMode = DisplayModeDropdown.SelectedValue;
WebPartDisplayMode mode = _manager.SupportedDisplayModes[selectedMode];
if (mode != null)
_manager.DisplayMode = mode;
}
// Set the selected item equal to the current display mode.
void Page_PreRender(object sender, EventArgs e)
{
ListItemCollection items = DisplayModeDropdown.Items;
int selectedIndex =
items.IndexOf(items.FindByText(_manager.DisplayMode.Name));
DisplayModeDropdown.SelectedIndex = selectedIndex;
}
// Reset all of a user's personalization data for the page.
protected void LinkButton1_Click(object sender, EventArgs e)
{
_manager.Personalization.ResetPersonalizationState();
}
// If not in User personalization scope, toggle into it.
protected void RadioButton1_CheckedChanged(object sender, EventArgs e)
{
if (_manager.Personalization.Scope == PersonalizationScope.Shared)
_manager.Personalization.ToggleScope();
}
// If not in Shared scope, and if user is allowed, toggle the scope.
protected void RadioButton2_CheckedChanged(object sender, EventArgs e)
{
if (_manager.Personalization.CanEnterSharedScope &&
_manager.Personalization.Scope == PersonalizationScope.User)
_manager.Personalization.ToggleScope();
}
</script>
<div>
<asp:Panel ID="Panel1" runat="server"
Borderwidth="1"
Width="230"
BackColor="lightgray"
Font-Names="Verdana, Arial, Sans Serif" >
<asp:Label ID="Label1" runat="server"
Text=" Display Mode"
Font-Bold="true"
Font-Size="8"
Width="120"
AssociatedControlID="DisplayModeDropdown"/>
<asp:DropDownList ID="DisplayModeDropdown" runat="server"
AutoPostBack="true"
Width="120"
OnSelectedIndexChanged="DisplayModeDropdown_SelectedIndexChanged" />
<asp:LinkButton ID="LinkButton1" runat="server"
Text="Reset User State"
ToolTip="Reset the current user's personalization data for the page."
Font-Size="8"
OnClick="LinkButton1_Click" />
<asp:Panel ID="Panel2" runat="server"
GroupingText="Personalization Scope"
Font-Bold="true"
Font-Size="8"
Visible="false" >
<asp:RadioButton ID="RadioButton1" runat="server"
Text="User"
AutoPostBack="true"
GroupName="Scope" OnCheckedChanged="RadioButton1_CheckedChanged" />
<asp:RadioButton ID="RadioButton2" runat="server"
Text="Shared"
AutoPostBack="true"
GroupName="Scope"
OnCheckedChanged="RadioButton2_CheckedChanged" />
</asp:Panel>
</asp:Panel>
</div>
<%@ control language="vb" classname="DisplayModeMenuVB"%>
<script runat="server">
' Use a field to reference the current WebPartManager.
Dim _manager As WebPartManager
Sub Page_Init(ByVal sender As Object, ByVal e As EventArgs)
AddHandler Page.InitComplete, AddressOf InitComplete
End Sub
Sub InitComplete(ByVal sender As Object, ByVal e As System.EventArgs)
_manager = WebPartManager.GetCurrentWebPartManager(Page)
Dim browseModeName As String = WebPartManager.BrowseDisplayMode.Name
' Fill the dropdown with the names of supported display modes.
Dim mode As WebPartDisplayMode
For Each mode In _manager.SupportedDisplayModes
Dim modeName As String = mode.Name
' Make sure a mode is enabled before adding it.
If mode.IsEnabled(_manager) Then
Dim item As New ListItem(modeName, modeName)
DisplayModeDropdown.Items.Add(item)
End If
Next mode
' If shared scope is allowed for this user, display the scope-switching
' UI and select the appropriate radio button for the current user scope.
If _manager.Personalization.CanEnterSharedScope Then
Panel2.Visible = True
If _manager.Personalization.Scope = PersonalizationScope.User Then
RadioButton1.Checked = True
Else
RadioButton2.Checked = True
End If
End If
End Sub
' Change the page to the selected display mode.
Sub DisplayModeDropdown_SelectedIndexChanged(ByVal sender As Object, _
ByVal e As EventArgs)
Dim selectedMode As String = DisplayModeDropdown.SelectedValue
Dim mode As WebPartDisplayMode = _
_manager.SupportedDisplayModes(selectedMode)
If Not (mode Is Nothing) Then
_manager.DisplayMode = mode
End If
End Sub
' Set the selected item equal to the current display mode.
Sub Page_PreRender(ByVal sender As Object, ByVal e As EventArgs)
Dim items As ListItemCollection = DisplayModeDropdown.Items
Dim selectedIndex As Integer = _
items.IndexOf(items.FindByText(_manager.DisplayMode.Name))
DisplayModeDropdown.SelectedIndex = selectedIndex
End Sub
' Reset all of a user's personalization data for the page.
Protected Sub LinkButton1_Click(ByVal sender As Object, _
ByVal e As EventArgs)
_manager.Personalization.ResetPersonalizationState()
End Sub
' If not in User personalization scope, toggle into it.
Protected Sub RadioButton1_CheckedChanged(ByVal sender As Object, _
ByVal e As EventArgs)
If _manager.Personalization.Scope = PersonalizationScope.Shared Then
_manager.Personalization.ToggleScope()
End If
End Sub
' If not in Shared scope, and if user is allowed, toggle the scope.
Protected Sub RadioButton2_CheckedChanged(ByVal sender As Object, _
ByVal e As EventArgs)
If _manager.Personalization.CanEnterSharedScope AndAlso _
_manager.Personalization.Scope = PersonalizationScope.User Then
_manager.Personalization.ToggleScope()
End If
End Sub
</script>
<div>
<asp:Panel ID="Panel1" runat="server"
Borderwidth="1"
Width="230"
BackColor="lightgray"
Font-Names="Verdana, Arial, Sans Serif" >
<asp:Label ID="Label1" runat="server"
Text=" Display Mode"
Font-Bold="true"
Font-Size="8"
Width="120"
AssociatedControlID="DisplayModeDropdown"/>
<asp:DropDownList ID="DisplayModeDropdown" runat="server"
AutoPostBack="true"
Width="120"
OnSelectedIndexChanged="DisplayModeDropdown_SelectedIndexChanged" />
<asp:LinkButton ID="LinkButton1" runat="server"
Text="Reset User State"
ToolTip="Reset the current user's personalization data for the page."
Font-Size="8"
OnClick="LinkButton1_Click" />
<asp:Panel ID="Panel2" runat="server"
GroupingText="Personalization Scope"
Font-Bold="true"
Font-Size="8"
Visible="false" >
<asp:RadioButton ID="RadioButton1" runat="server"
Text="User"
AutoPostBack="true"
GroupName="Scope" OnCheckedChanged="RadioButton1_CheckedChanged" />
<asp:RadioButton ID="RadioButton2" runat="server"
Text="Shared"
AutoPostBack="true"
GroupName="Scope"
OnCheckedChanged="RadioButton2_CheckedChanged" />
</asp:Panel>
</asp:Panel>
</div>
Kod örneğinin ikinci bölümü Web sayfasıdır. Sayfanın üst kısmında biri kullanıcı denetimi, diğeri de iki özel WebPart denetimi içeren derlenmiş bileşen için iki yönerge bulunurregister
. Sayfanın, doğru bildirim temelli öğeler hiyerarşisi ImportCatalogPart içinde iç içe geçmiş denetime bildirim temelli bir başvurusu olduğuna dikkat edin. Ayrıca öğeye bildirim temelli olarak birkaç özellik değeri atandığını <asp:importcatalogpart>
da görebilirsiniz. Ayrıca yöntemi, Button1_Click
denetimdeki ImportCatalogPart bir dizi özellik değerini güncelleştirir.
Sayfanın WebPartZone denetiminde iki özel WebPart denetim bildirilir. Denetimin <aspSample:userinfowebpart>
üzerinde bir exportmode="all"
özniteliği vardır. Bu öznitelik, kullanıcıların denetim için bir açıklama dosyasını dışarı aktarmasına olanak tanımak için gereklidir. Bu dosya, açıklama dosyasını kullanarak denetimi içeri aktarmak isteyen diğer kullanıcılar tarafından içeri aktarılabilir.
Not
Web Bölümleri uygulamasının kullanıcılarının denetimler için bir açıklama dosyasını dışarı aktarmasını sağlamak içinWebPart, Web.config dosyasındaki öğesine (öğenin alt <system.web>
öğesi) bir enableExport="true"
öznitelik <webParts>
ekleyerek Web uygulamasında dışarı aktarma özelliğini de etkinleştirmeniz gerekir. Dışarı aktarma varsayılan olarak devre dışıdır, dolayısıyla uygulamanız için dışarı aktarmayı henüz etkinleştirmediyseniz Web.config dosyasını düzenleyin ve şimdi yapın.
<%@ 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">
// <snippet3>
protected void Button1_Click(object sender, EventArgs e)
{
ImportCatalogPart1.Title = "Import Server Controls";
ImportCatalogPart1.BrowseHelpText = "Enter the path to a "
+ "description file.";
ImportCatalogPart1.UploadButtonText = "Upload Description";
ImportCatalogPart1.UploadHelpText = "Upload a description file.";
ImportCatalogPart1.ImportedPartLabelText = "Imported Controls";
ImportCatalogPart1.PartImportErrorLabelText = "An error occurred "
+ "during the import process.";
}
// </snippet3>
protected void Page_Load(object sender, EventArgs e)
{
Button1.Visible = false;
}
protected void ImportCatalogPart1_PreRender(object sender,
EventArgs e)
{
Button1.Visible = true;
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>
ImportCatalogPart Control
</title>
</head>
<body>
<form id="form1" runat="server">
<asp:webpartmanager id="WebPartManager1" runat="server" />
<uc1:DisplayModeMenuCS ID="DisplayModeMenu1" runat="server" />
<asp:webpartzone id="zone1" runat="server" >
<PartTitleStyle BorderWidth="1"
Font-Names="Verdana, Arial"
Font-Size="110%"
BackColor="LightBlue" />
<zonetemplate>
<aspSample:TextDisplayWebPart
runat="server"
id="TextDisplayWebPart1"
title = "Text Display WebPart" />
<aspsample:userinfowebpart id="userinfo1" runat="server"
Title="User Information" exportmode="all" />
</zonetemplate>
</asp:webpartzone>
<asp:EditorZone ID="EditorZone1" runat="server">
<ZoneTemplate>
<asp:PropertyGridEditorPart ID="PropertyGridEditorPart1"
runat="server" />
</ZoneTemplate>
</asp:EditorZone>
<asp:CatalogZone ID="CatalogZone1" runat="server">
<ZoneTemplate>
<asp:ImportCatalogPart ID="ImportCatalogPart1"
runat="server"
Title="My ImportCatalogPart"
OnPreRender="ImportCatalogPart1_PreRender"
BrowseHelpText="Type a path or browse to find a control's
description file."
UploadButtonText="Upload Description File"
UploadHelpText="Click the button to upload the description
file."
ImportedPartLabelText="My User Information WebPart"
PartImportErrorLabelText="An error occurred while trying
to import a description file." />
</ZoneTemplate>
</asp:CatalogZone>
<hr />
<asp:Button ID="Button1" runat="server"
Text="Update ImportCatalogPart"
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">
' <snippet3>
Protected Sub Button1_Click(ByVal sender As Object, _
ByVal e As EventArgs)
ImportCatalogPart1.Title = "Import Server Controls"
ImportCatalogPart1.BrowseHelpText = "Enter the path to a " _
& "description file."
ImportCatalogPart1.UploadButtonText = "Upload Description"
ImportCatalogPart1.UploadHelpText = "Upload a description file."
ImportCatalogPart1.ImportedPartLabelText = "Imported Controls"
ImportCatalogPart1.PartImportErrorLabelText = "An error occurred " _
& "during the import process."
End Sub
' </snippet3>
Protected Sub Page_Load(ByVal sender As Object, _
ByVal e As EventArgs)
Button1.Visible = false
End Sub
Protected Sub ImportCatalogPart1_PreRender(ByVal sender As Object, _
ByVal e As EventArgs)
Button1.Visible = true
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>
ImportCatalogPart Control
</title>
</head>
<body>
<form id="form1" runat="server">
<asp:webpartmanager id="WebPartManager1" runat="server" />
<uc1:DisplayModeMenuVB ID="DisplayModeMenu1" runat="server" />
<asp:webpartzone id="zone1" runat="server" >
<PartTitleStyle BorderWidth="1"
Font-Names="Verdana, Arial"
Font-Size="110%"
BackColor="LightBlue" />
<zonetemplate>
<aspSample:TextDisplayWebPart
runat="server"
id="TextDisplayWebPart1"
title = "Text Display WebPart" />
<aspsample:userinfowebpart id="userinfo1" runat="server"
Title="User Information" exportmode="all" />
</zonetemplate>
</asp:webpartzone>
<asp:EditorZone ID="EditorZone1" runat="server">
<ZoneTemplate>
<asp:PropertyGridEditorPart ID="PropertyGridEditorPart1"
runat="server" />
</ZoneTemplate>
</asp:EditorZone>
<asp:CatalogZone ID="CatalogZone1" runat="server">
<ZoneTemplate>
<asp:ImportCatalogPart ID="ImportCatalogPart1"
runat="server"
Title="My ImportCatalogPart"
OnPreRender="ImportCatalogPart1_PreRender"
BrowseHelpText="Type a path or browse to find a control's
description file."
UploadButtonText="Upload Description File"
UploadHelpText="Click the button to upload the description
file."
ImportedPartLabelText="My User Information WebPart"
PartImportErrorLabelText="An error occurred while trying
to import a description file." />
</ZoneTemplate>
</asp:CatalogZone>
<hr />
<asp:Button ID="Button1" runat="server"
Text="Update ImportCatalogPart"
OnClick="Button1_Click" />
</form>
</body>
</html>
Kod örneğinin üçüncü bölümü, iki WebPart denetimin kaynak kodudur. Bu denetimlerde bazı özelliklerin WebBrowsable
özniteliğiyle işaretlendiğini fark edin. Bu, denetimin PropertyGridEditorPart , denetimler düzenleme modundayken kullanıcının bu özellikleri düzenlemesi için kullanıcı arabirimini (UI) dinamik olarak oluşturmasını sağlar. Özellikler, düzenleme kullanıcı arabirimindeki her denetimin yanında görünen etiketin metnini belirtmek için bir WebDisplayName
öznitelikle de işaretlenir. 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 kod örneği dinamik derleme kullanır. Her iki derleme yöntemini de gösteren bir kılavuz için bkz. İzlenecek yol: Özel Web Sunucusu Denetimi Geliştirme ve Kullanma.
Adlı TextDisplayWebPart
özel denetime Web sayfasında bir <aspSample:TextDisplayWebPart>
öğesiyle başvurulur. adlı UserInfoWebPart
diğer denetim de başlangıçta Web sayfasında bildirilir, ancak daha sonra bir denetim için açıklama dosyasını içeri aktarma özelliğini göstermek üzere kaldıracaksınız.
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 UserInfoWebPart : WebPart
{
HttpServerUtility server = HttpContext.Current.Server;
private String _userNickName = "Add a nickname.";
private String _userPetName = "Add a pet name.";
private DateTime _userSpecialDate = DateTime.Now;
private Boolean _userIsCurrent = true;
private JobTypeName _userJobType = JobTypeName.Unselected;
public enum JobTypeName
{
Unselected = 0,
Support = 1,
Service = 2,
Professional = 3,
Technical = 4,
Manager = 5,
Executive = 6
}
Label NickNameLabel;
Label PetNickNameLabel;
Label SpecialDateLabel;
CheckBox IsCurrentCheckBox;
Label JobTypeLabel;
// Add the Personalizable and WebBrowsable attributes to the
// public properties, so that users can save property values
// and edit them with a PropertyGridEditorPart control.
[Personalizable(), WebBrowsable, WebDisplayName("Nickname")]
public String NickName
{
get
{
object o = ViewState["NickName"];
if (o != null)
return (string)o;
else
return _userNickName;
}
set { _userNickName = server.HtmlEncode(value); }
}
[Personalizable(), WebBrowsable, WebDisplayName("Pet Name")]
public String PetName
{
get
{
object o = ViewState["PetName"];
if (o != null)
return (string)o;
else
return _userPetName;
}
set { _userPetName = server.HtmlEncode(value); }
}
[Personalizable(), WebBrowsable(), WebDisplayName("Special Day")]
public DateTime SpecialDay
{
get
{
object o = ViewState["SpecialDay"];
if (o != null)
return (DateTime)o;
else
return _userSpecialDate;
}
set { _userSpecialDate = value; }
}
[Personalizable(), WebBrowsable(), WebDisplayName("Job Type")]
public JobTypeName UserJobType
{
get
{
object o = ViewState["UserJobType"];
if (o != null)
return (JobTypeName)o;
else
return _userJobType;
}
set { _userJobType = (JobTypeName)value; }
}
[Personalizable(), WebBrowsable(), WebDisplayName("Is Current")]
public Boolean IsCurrent
{
get
{
object o = ViewState["IsCurrent"];
if (o != null)
return (Boolean)o;
else
return _userIsCurrent;
}
set { _userIsCurrent = value; }
}
protected override void CreateChildControls()
{
Controls.Clear();
NickNameLabel = new Label();
NickNameLabel.Text = this.NickName;
SetControlAttributes(NickNameLabel);
PetNickNameLabel = new Label();
PetNickNameLabel.Text = this.PetName;
SetControlAttributes(PetNickNameLabel);
SpecialDateLabel = new Label();
SpecialDateLabel.Text = this.SpecialDay.ToShortDateString();
SetControlAttributes(SpecialDateLabel);
IsCurrentCheckBox = new CheckBox();
IsCurrentCheckBox.Checked = this.IsCurrent;
SetControlAttributes(IsCurrentCheckBox);
JobTypeLabel = new Label();
JobTypeLabel.Text = this.UserJobType.ToString();
SetControlAttributes(JobTypeLabel);
ChildControlsCreated = true;
}
private void SetControlAttributes(WebControl ctl)
{
ctl.BackColor = Color.White;
ctl.BorderWidth = 1;
ctl.Width = 200;
this.Controls.Add(ctl);
}
protected override void RenderContents(HtmlTextWriter writer)
{
writer.Write("Nickname:");
writer.WriteBreak();
NickNameLabel.RenderControl(writer);
writer.WriteBreak();
writer.Write("Pet Name:");
writer.WriteBreak();
PetNickNameLabel.RenderControl(writer);
writer.WriteBreak();
writer.Write("Special Date:");
writer.WriteBreak();
SpecialDateLabel.RenderControl(writer);
writer.WriteBreak();
writer.Write("Job Type:");
writer.WriteBreak();
JobTypeLabel.RenderControl(writer);
writer.WriteBreak();
writer.Write("Current:");
writer.WriteBreak();
IsCurrentCheckBox.RenderControl(writer);
}
}
[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 = Context.Server.HtmlEncode(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 UserInfoWebPart
Inherits WebPart
Private server As HttpServerUtility = HttpContext.Current.Server
Private _userNickName As String = "Add a nickname."
Private _userPetName As String = "Add a pet name."
Private _userSpecialDate As DateTime = DateTime.Now
Private _userIsCurrent As [Boolean] = True
Private _userJobType As JobTypeName = JobTypeName.Unselected
Public Enum JobTypeName
Unselected = 0
Support = 1
Service = 2
Professional = 3
Technical = 4
Manager = 5
Executive = 6
End Enum
Private NickNameLabel As Label
Private PetNickNameLabel As Label
Private SpecialDateLabel As Label
Private IsCurrentCheckBox As CheckBox
Private JobTypeLabel As Label
' Add the Personalizable and WebBrowsable attributes to the
' public properties, so that users can save property values
' and edit them with a PropertyGridEditorPart control.
<Personalizable(), WebBrowsable(), WebDisplayName("Nickname")> _
Public Property NickName() As String
Get
Dim o As Object = ViewState("NickName")
If Not (o Is Nothing) Then
Return CStr(o)
Else
Return _userNickName
End If
End Get
Set(ByVal value As String)
_userNickName = server.HtmlEncode(value)
End Set
End Property
<Personalizable(), WebBrowsable(), WebDisplayName("Pet Name")> _
Public Property PetName() As String
Get
Dim o As Object = ViewState("PetName")
If Not (o Is Nothing) Then
Return CStr(o)
Else
Return _userPetName
End If
End Get
Set(ByVal value As String)
_userPetName = server.HtmlEncode(value)
End Set
End Property
<Personalizable(), WebBrowsable(), WebDisplayName("Special Day")> _
Public Property SpecialDay() As DateTime
Get
Dim o As Object = ViewState("SpecialDay")
If Not (o Is Nothing) Then
Return CType(o, DateTime)
Else
Return _userSpecialDate
End If
End Get
Set(ByVal value As DateTime)
_userSpecialDate = value
End Set
End Property
<Personalizable(), WebBrowsable(), WebDisplayName("Job Type")> _
Public Property UserJobType() As JobTypeName
Get
Dim o As Object = ViewState("UserJobType")
If Not (o Is Nothing) Then
Return CType(o, JobTypeName)
Else
Return _userJobType
End If
End Get
Set(ByVal value As JobTypeName)
_userJobType = CType(value, JobTypeName)
End Set
End Property
<Personalizable(), WebBrowsable(), WebDisplayName("Is Current")> _
Public Property IsCurrent() As [Boolean]
Get
Dim o As Object = ViewState("IsCurrent")
If Not (o Is Nothing) Then
Return CType(o, [Boolean])
Else
Return _userIsCurrent
End If
End Get
Set(ByVal value As [Boolean])
_userIsCurrent = value
End Set
End Property
Protected Overrides Sub CreateChildControls()
Controls.Clear()
NickNameLabel = New Label()
NickNameLabel.Text = Me.NickName
SetControlAttributes(NickNameLabel)
PetNickNameLabel = New Label()
PetNickNameLabel.Text = Me.PetName
SetControlAttributes(PetNickNameLabel)
SpecialDateLabel = New Label()
SpecialDateLabel.Text = Me.SpecialDay.ToShortDateString()
SetControlAttributes(SpecialDateLabel)
IsCurrentCheckBox = New CheckBox()
IsCurrentCheckBox.Checked = Me.IsCurrent
SetControlAttributes(IsCurrentCheckBox)
JobTypeLabel = New Label()
JobTypeLabel.Text = Me.UserJobType.ToString()
SetControlAttributes(JobTypeLabel)
ChildControlsCreated = True
End Sub
Private Sub SetControlAttributes(ByVal ctl As WebControl)
ctl.BackColor = Color.White
ctl.BorderWidth = 1
ctl.Width = 200
Me.Controls.Add(ctl)
End Sub
Protected Overrides Sub RenderContents(ByVal writer As HtmlTextWriter)
writer.Write("Nickname:")
writer.WriteBreak()
NickNameLabel.RenderControl(writer)
writer.WriteBreak()
writer.Write("Pet Name:")
writer.WriteBreak()
PetNickNameLabel.RenderControl(writer)
writer.WriteBreak()
writer.Write("Special Date:")
writer.WriteBreak()
SpecialDateLabel.RenderControl(writer)
writer.WriteBreak()
writer.Write("Job Type:")
writer.WriteBreak()
JobTypeLabel.RenderControl(writer)
writer.WriteBreak()
writer.Write("Current:")
writer.WriteBreak()
IsCurrentCheckBox.RenderControl(writer)
End Sub
End Class
<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 String.IsNullOrEmpty(input.Text) = False Then
_contentText = Context.Server.HtmlEncode(input.Text) + "<br />"
input.Text = String.Empty
DisplayContent.Text = Me.ContentText
End If
End Sub
End Class
End Namespace
Şimdi kod örneğini çalıştırın. Web sayfasını bir tarayıcıda yükleyin. İlk adım denetimi düzenlemektir UserInfoWebPart
.
Görüntüleme Modu açılan liste denetimini kullanın ve Düzenle'yi seçerek sayfayı düzenleme moduna geçirin. Denetimin fiiller menüsüne UserInfoWebPart
(başlık çubuğundaki aşağı ok) tıklayın ve ardından Düzenle'ye tıklayın. Düzenleme kullanıcı arabirimi görüntülendiğinde, alan değerlerini düzenlemek için kullanabileceğiniz denetimin altında UserInfoWebPart
çeşitli düzenleme denetimleri görünür. Bazı alanları düzenleyin, Tamam'a tıklayın ve sayfayı göz atma moduna döndürmek için Görüntü Modu açılan listesini kullanın.
İkinci adım bir dışarı aktarmaktır. Denetim için UserInfoWebPart
Web Bölümü açıklama dosyası. Özel denetimdeki fiiller menüsüne tıklayın (başlık çubuğundaki aşağı okla gösterilir) ve Dışarı Aktar'a tıklayın. Bir kaydetmek için yönergeleri izleyin. Denetim için Web Bölümü açıklama dosyası. Şimdi Web sayfasını kapatın ve bir düzenleyicide sayfa kaynağını düzenleyin.
<aspSample:userinfowebpart>
Denetim bildirimi öğesini silin, ardından dosyayı kaydedin ve kapatın. (Denetimi sayfaya içeri aktarabilmek için bu adımı henüz UserInfoWebPart
denetimi olmayan bir kullanıcının benzetimini yapmak için yapıyorsunuz).
Web sayfasını bir tarayıcıda yeniden yükleyin. Denetimi UserInfoWebPart
kaldırdığınızdan, denetim görüntülenmemelidir.
Görüntüleme Modu açılan liste denetimini kullanın ve Katalog'a tıklayarak sayfayı katalog moduna geçirin. Denetimde ImportCatalogPartGözat düğmesine tıklayın ve öğesine gidin. Oluşturduğunuz Web Bölümü dosyası, ardından Karşıya Yükle düğmesine tıklayın. Denetimin yanında bir onay kutusu bulunan bir başvuru görünmelidir. Denetimi sayfaya eklemek için onay kutusunu seçin ve ekle'ye tıklayın.
Sayfanın bu görünümündeyken, denetimdeki bir dizi özellik değerini ImportCatalogPart program aracılığıyla güncelleştirmenin etkisini görmek için sayfanın alt kısmındaki ImportCatalogPart'ı Güncelleştir düğmesine tıklayın. Düğmeye tıkladıktan sonra kullanıcı arabiriminde çeşitli özelliklerin nasıl değiştirildiğini gözlemleyin.
Son olarak, katalog modundan çıkmak ve sayfayı göz atma moduna döndürmek için Kapat'a tıklayın. Denetim UserInfoWebPart
, daha önce dışarı aktardığınızda sahip olduğu değerleri içeren sayfada görünmelidir.
Açıklamalar
Denetim, ImportCatalogPart kullanıcıların bir denetim veya sunucu denetimindeki ayarları açıklayan ve WebPart kullanıcının bir bölgeye eklemek istediği bir WebPartZoneBase açıklama dosyasını içeri aktarmasına olanak tanır.
Kullanıcı bir açıklama dosyasını içeri aktardıktan sonra, WebPart dosyada başvuruda bulunulmuş denetim denetimin ImportCatalogPart içinde görünür ve kullanıcı denetimi sayfaya ekleyebilir.
Açıklama dosyası denetimin kendisiyle aynı değildir. ile biten bir XML dosyasıdır. Web Bölümü uzantısı ve denetimin durumunu açıklayan ad/değer çiftleri (çoğunlukla özellik değerleri) içerir. Açıklama dosyası, Web Bölümleri Denetimi Açıklama Dosyaları konusunda açıklandığı gibi belirtilen XML biçimine göre oluşturulur.
Açıklama dosyasının başvurduğu denetime gelince, bir derlemede derlenebilir veya .ascx dosyasında tanımlanan bir kullanıcı denetimi olabilir. Her iki durumda da, içeri aktarılan açıklama dosyasında başvuruda bulunulmuş denetim, denetimi içeri aktarmaya çalışan sayfayı barındıran Web sunucusunda bulunmalıdır. Açıklama dosyası, denetimi içeren denetim adına ve derlemeye (veya dosyaya) başvurur ve açıklama dosyası denetimin özellik değerlerini, görünümünü ve davranışını etkileyen ayarları içerir.
Denetim, ImportCatalogPart kullanıcıların denetimlerle ilgili ayarları paylaşmasına olanak tanır. Karmaşık bir denetimin birçok özelliği ve ayarı olabilir. Örneğin, büyük bir şirket içindeki tipik bir intranet sitesinde özel WebPart denetim, veritabanı bağlantıları, departman bilgileri vb. gibi kullanıcıların ortamına özgü değerleri tutan bir dizi özellik içerebilir. Denetim, görünümünü etkileyen bir dizi özellik de içerebilir. Bir kullanıcı, belirli bir sitedeki denetimi kişiselleştirebilir ve düzgün çalışmasını sağlayabilir, denetim için bir açıklama dosyasını dışarı aktarabilir ve ardından açıklama dosyasını diğer kullanıcılarla paylaşabilir. Bu kullanıcılar, dosyayı içeri aktararak tam olarak yapılandırılmış denetimi kişiselleştirmelerine izin verilen diğer intranet sitelerine ekleyebilir. Denetimi içeren derlenmiş derleme veya kullanıcı denetim dosyası, sitelerini barındıran Web sunucusunda mevcut olduğu sürece, kullanıcılar denetimi diğer Web sitelerine ekleyebilir.
Kullanıcıların bir açıklama dosyasını (ve dolayısıyla ilişkili sunucu denetimini) Web sayfasına içeri aktardığı mekanizma, sayfa geliştiricisinin ImportCatalogPart Web sayfasına eklemesi gereken denetimdir. Kullanıcı sayfayı katalog görüntüleme moduna geçtiğinde ImportCatalogPart denetim görüntülenir ve kullanıcı bu denetimi kullanarak öğesine göz atabilir. İçeri aktarmak istedikleri sunucu denetimine karşılık gelen Web Bölümü açıklama dosyası. Kullanıcı arabirimini ve denetim tarafından ImportCatalogPart sağlanan yönergeleri izleyerek, kullanıcı web sayfasına istenen sunucu denetimini ekleyebilir ve görünümü ve özellikleri içeri aktarılan açıklama dosyasında belirtildiği gibi tam olarak yapılandırılır.
Bir WebPart denetimin açıklama dosyasının içeri aktarılabilmesi için önce kullanıcının mevcut WebPart bir denetimi temel alarak dosyayı oluşturması (dışarı aktarması) gerekir. Aşağıdaki koşullar karşılanırsa bir açıklama dosyası denetim için dışarı aktarılabilir:
Denetimin özniteliğiyle
Personalizable
işaretlenmiş özellikleri vardır.Web.config dosyasının öğesinde
enableExport
<webParts>
öznitelik değeri olarak ayarlanmıştırtrue
.Geliştirici, denetimdeki özelliğinin ExportMode değerini, dışarı aktarmayı yasaklayan varsayılan değeri dışında bir değere Noneayarlar. ExportMode Özellik değeri olarak ayarlanırsaNonSensitiveData, kullanıcı bir açıklama dosyasını dışarı aktardığında özniteliği olan bir
Personalizable
IsSensitive parametre içeren herhangi bir özellik dışarı aktarılmaz. Bu, denetim geliştiricilerinin belirli durumlarda bağlantı dizeleri gibi hassas verilerin dışarı aktarılmasını engellemesini sağlar.
Kullanıcı, denetimin fiiller menüsünde görüntülenen dışarı aktarma fiiline tıklayarak ve kaydetme yönergelerini izleyerek dışarı aktarma için etkinleştirilmiş bir denetimi dışarı aktarabilir. Denetim için Web Bölümü açıklama dosyası. Diğer kullanıcılar bu dosyayı içeri aktararak kendi denetim örneklerini yapılandırabilir.
ImportCatalogPart sınıfı çeşitli özellikler içerir. özelliği, BrowseHelpText açıklama dosyasını bulmak için göz atarken kullanıcılara yönelik yönergeler içeren metin içerir. özelliği, ImportedPartLabelText içeri aktarılan denetim için denetim içinde ImportCatalogPart göründüğü şekilde etiket görevi görecek bir metin içerir. , PartImportErrorLabelText denetim açıklaması içeri aktarılırken bir hata oluşursa görüntülenen metni içerir. özelliği, Title geliştirici bir başlık atamazsa bir ImportCatalogPart denetim için varsayılan başlık atamak üzere temel özelliği geçersiz kılar. özelliği, UploadButtonText kullanıcının açıklama dosyasını karşıya yüklemek için tıklattığını düğmenin metnini ve UploadHelpText karşıya yükleme işlemine yönelik yönergeleri içerir.
ImportCatalogPart sınıfı ayrıca birkaç benzersiz yöntem içerir. GetAvailableWebPartDescriptions yöntemi, katalogdaki her WebPart denetim için bir WebPartDescription nesne alır ve bu da bir ImportCatalogPart denetimin bir örneğini oluşturmak zorunda kalmadan her sunucu denetimiyle ilgili bilgileri görüntülemesini sağlar. yöntemi, GetWebPart yöntemine geçirilen açıklamaya göre belirli WebPart bir denetimin örneğini alır.
Denetimin kullanılmasıyla ImportCatalogPart ilgili bazı doğal riskler vardır. Örneklerden biri, içeri aktarmak için kullanılan açıklama dosyaları aracılığıyla kötü amaçlı verileri Web uygulamanıza aktarma olasılığıdır. Birisi açıklama dosyasına dize özelliğinin değeri olarak kötü amaçlı betik kodu yerleştirmişse, bir kullanıcı açıklama dosyasını içeri aktarıp başvurulan sunucu denetimini bir Web sayfasına eklediğinde bu betik yürütülebilir. Açıklama dosyalarını kötü amaçlı verilerle içeri aktarma riskini en aza indirmek için, dize türündeki özelliklere sahip sunucu denetimleri her zaman özellik verilerini kodlamalıdır. Bir diğer risk de türlerin açıklama dosyaları aracılığıyla içeri aktarılmasıdır (bkz . Web Bölümleri Denetimi Açıklama Dosyaları). Kötü amaçlı bir kullanıcı içine çok sayıda derleme AppDomainyüklemek için istek gönderebilir ve bu da aşırı miktarda bellek tüketilmesine neden olur.
İçeri aktarmayla ilgili riskleri önlemek için içeri aktarma özelliğini veya ImportCatalogPart denetimi kullanmayarak özelliği tamamen devre dışı bırakabilirsiniz. Ya da kullanıcıların denetime erişebileceklerini sınırlayabilirsiniz. Rol yönetimini kullanarak bunu program aracılığıyla yapabilirsiniz (bkz. Rolleri Kullanarak Yetkilendirmeyi Yönetme). Örneğin, sayfa yüklendiğinde kullanıcının yönetici rolü gibi belirli bir rolde olup olmadığını test edebilirsiniz. Kullanıcı roldeyse, denetimi o kullanıcının sayfasına program aracılığıyla ekleyebilirsiniz ImportCatalogPart . Ayrıca, denetimi kullanabilecek kullanıcı kümesini sınırlamak için bildirim temelli bir yaklaşım da kullanabilirsiniz ImportCatalogPart . Katalog içeren web sayfanıza iki CatalogZone denetim yerleştirebilirsiniz: biri içeri aktarabilen kullanıcılar için, diğeri de içeri aktaramayanlar için. İçeri aktarabilen kullanıcıların bölgesi denetimi içerir ImportCatalogPart . Bölge bir LoginView denetimin içine yerleştirilebilir ve bu da bölgedeki denetimin kullanımını yalnızca belirttiğiniz kimliği doğrulanmış kullanıcılar veya rollerle sınırlandırmanızı sağlar.
Oluşturucular
ImportCatalogPart() |
ImportCatalogPart sınıfının yeni bir örneğini başlatır. |
Özellikler
AccessKey |
Web sunucusu denetimine hızla gitmenize olanak tanıyan erişim anahtarını alır veya ayarlar. (Devralındığı yer: WebControl) |
Adapter |
Denetim için tarayıcıya özgü bağdaştırıcıyı alır. (Devralındığı yer: Control) |
AppRelativeTemplateSourceDirectory |
Bu denetimi içeren veya nesnesinin Page uygulama göreli sanal dizinini alır veya UserControl ayarlar. (Devralındığı yer: Control) |
Attributes |
Denetimdeki özelliklere karşılık gelen rastgele özniteliklerin (yalnızca işleme için) koleksiyonunu alır. (Devralındığı yer: WebControl) |
BackColor |
Web sunucusu denetiminin arka plan rengini alır veya ayarlar. (Devralındığı yer: WebControl) |
BackImageUrl |
Panel denetimi için arka plan görüntüsünün URL'sini alır veya ayarlar. (Devralındığı yer: Panel) |
BindingContainer |
Bu denetimin veri bağlamasını içeren denetimi alır. (Devralındığı yer: Control) |
BorderColor |
Web denetiminin kenarlık rengini alır veya ayarlar. (Devralındığı yer: WebControl) |
BorderStyle |
Web sunucusu denetiminin kenarlık stilini alır veya ayarlar. (Devralındığı yer: WebControl) |
BorderWidth |
Web sunucusu denetiminin kenarlık genişliğini alır veya ayarlar. (Devralındığı yer: WebControl) |
BrowseHelpText |
Kullanıcılara açıklama dosyasının konumuna göz atmalarını belirten bir kısa mesaj alır veya ayarlar. |
ChildControlsCreated |
Sunucu denetiminin alt denetimlerinin oluşturulup oluşturulmadığını gösteren bir değer alır. (Devralındığı yer: Control) |
ChromeState |
Parça denetiminin simge durumuna küçültülmüş veya normal durumda olup olmadığını alır veya ayarlar. (Devralındığı yer: Part) |
ChromeType |
Web Bölümleri denetimini çerçeveleyen kenarlık türünü alır veya ayarlar. (Devralındığı yer: Part) |
ClientID |
ASP.NET tarafından oluşturulan HTML işaretlemesinin denetim kimliğini alır. (Devralındığı yer: Control) |
ClientIDMode |
özelliğinin değerini oluşturmak için kullanılan algoritmayı ClientID alır veya ayarlar. (Devralındığı yer: Control) |
ClientIDSeparator |
özelliğinde ClientID kullanılan ayırıcı karakteri temsil eden bir karakter değeri alır. (Devralındığı yer: Control) |
Context |
HttpContext Geçerli Web isteği için sunucu denetimiyle ilişkili nesneyi alır. (Devralındığı yer: Control) |
Controls |
ControlCollection Kullanıcı arabirimi hiyerarşisinde belirtilen sunucu denetimi için alt denetimleri içeren bir nesnesi alır. (Devralındığı yer: Part) |
ControlStyle |
Web sunucusu denetiminin stilini alır. Bu özellik öncelikle denetim geliştiricileri tarafından kullanılır. (Devralındığı yer: WebControl) |
ControlStyleCreated |
Özelliği için ControlStyle bir nesne oluşturulup oluşturulmadığını belirten bir Style değer alır. Bu özellik öncelikli olarak denetim geliştiricileri tarafından kullanılır. (Devralındığı yer: WebControl) |
CssClass |
İstemcideki Web sunucusu denetimi tarafından işlenen Basamaklı Stil Sayfası (CSS) sınıfını alır veya ayarlar. (Devralındığı yer: WebControl) |
DataItemContainer |
Adlandırma kapsayıcısı uygularsa IDataItemContaineradlandırma kapsayıcısına bir başvuru alır. (Devralındığı yer: Control) |
DataKeysContainer |
Adlandırma kapsayıcısı uygularsa IDataKeysControladlandırma kapsayıcısına bir başvuru alır. (Devralındığı yer: Control) |
DefaultButton |
Kullanıcı arabirimindeki (UI) düğmeyi içeren form işlendiğinde odağı alan varsayılan düğme olarak kabul edilen düğmeyi alır veya ayarlar. Bu özelliğin sayfa geliştirici kodundan çağrılması amaçlanmamıştır. |
Description |
Araç İpuçlarında ve parça denetimlerinin kataloglarında kullanılmak üzere parça denetiminin ne yaptığını özetleyen kısa bir tümcecik alır veya ayarlar. (Devralındığı yer: Part) |
DesignMode |
Bir denetimin tasarım yüzeyinde kullanılıp kullanılmadığını belirten bir değer alır. (Devralındığı yer: Control) |
Direction |
Denetimde metin Panel içeren denetimlerin görüntüleneceği yönü alır veya ayarlar. (Devralındığı yer: Panel) |
DisplayTitle |
Denetimin gerçek geçerli başlığını içeren bir CatalogPart dize alır. (Devralındığı yer: CatalogPart) |
Enabled |
Web sunucusu denetiminin etkinleştirilip etkinleştirilmediğini belirten bir değer alır veya ayarlar. (Devralındığı yer: WebControl) |
EnableTheming |
Temaların bu denetime uygulanıp uygulanmayacağını belirten bir değer alır veya ayarlar. (Devralındığı yer: WebControl) |
EnableViewState |
Sunucu denetiminin görünüm durumunu ve içerdiği alt denetimlerin görünüm durumunu istekte bulunan istemciye kalıcı hale getirip getirmek olmadığını belirten bir değer alır veya ayarlar. (Devralındığı yer: Control) |
Events |
Denetim için olay işleyicisi temsilcilerinin listesini alır. Bu özellik salt okunur durumdadır. (Devralındığı yer: Control) |
Font |
Web sunucusu denetimiyle ilişkili yazı tipi özelliklerini alır. (Devralındığı yer: WebControl) |
ForeColor |
Web sunucusu denetiminin ön plan rengini (genellikle metnin rengi) alır veya ayarlar. (Devralındığı yer: WebControl) |
GroupingText |
Panel denetiminde yer alan denetim grubu için resim yazısını alır veya ayarlar. (Devralındığı yer: Panel) |
HasAttributes |
Denetimin öznitelikleri ayarlanıp ayarlanmadığını belirten bir değer alır. (Devralındığı yer: WebControl) |
HasChildViewState |
Geçerli sunucu denetiminin alt denetimlerinin kaydedilmiş görünüm durumu ayarlarına sahip olup olmadığını gösteren bir değer alır. (Devralındığı yer: Control) |
Height |
Web sunucusu denetiminin yüksekliğini alır veya ayarlar. (Devralındığı yer: WebControl) |
HorizontalAlign |
Paneldeki içeriklerin yatay hizalamasını alır veya ayarlar. (Devralındığı yer: Panel) |
ID |
Sunucu denetimine atanan program tanımlayıcısını alır veya ayarlar. (Devralındığı yer: Control) |
IdSeparator |
Denetim tanımlayıcılarını ayırmak için kullanılan karakteri alır. (Devralındığı yer: Control) |
ImportedPartLabelText |
Kullanıcı içeri aktarılan denetim kataloğundaki içeri aktarılan denetimi göstermek veya açıklamak için bir açıklama dosyasını içeri aktardıktan sonra görüntülenen metni alır veya ayarlar. |
IsChildControlStateCleared |
Bu denetim içindeki denetimlerin denetim durumuna sahip olup olmadığını belirten bir değer alır. (Devralındığı yer: Control) |
IsEnabled |
Denetimin etkinleştirilip etkinleştirilmediğini belirten bir değer alır. (Devralındığı yer: WebControl) |
IsTrackingViewState |
Sunucu denetiminin değişiklikleri görünüm durumuna kaydedip kaydetmediğini gösteren bir değer alır. (Devralındığı yer: Control) |
IsViewStateEnabled |
Bu denetim için görünüm durumunun etkinleştirilip etkinleştirilmediğini belirten bir değer alır. (Devralındığı yer: Control) |
LoadViewStateByID |
Denetimin dizin yerine görünüm durumunu ID yüklemeye katılıp katılmadığını belirten bir değer alır. (Devralındığı yer: Control) |
NamingContainer |
Aynı özellik değerine sahip sunucu denetimleri arasında ayrım yapmak için benzersiz bir ad alanı oluşturan sunucu denetiminin adlandırma kapsayıcısına ID başvuru alır. (Devralındığı yer: Control) |
Page |
Sunucu denetimini içeren örneğe başvuru Page alır. (Devralındığı yer: Control) |
Parent |
Sayfa denetimi hiyerarşisindeki sunucu denetiminin üst denetimine başvuru alır. (Devralındığı yer: Control) |
PartImportErrorLabelText |
İçeri aktarma işlemi sırasında bir hata oluşursa görüntülenen bir hata iletisini alır veya ayarlar. |
RenderingCompatibility |
HTML'nin uyumlu olacağı ASP.NET sürümünü belirten bir değer alır. (Devralındığı yer: Control) |
ScrollBars |
Denetimdeki kaydırma çubuklarının Panel görünürlüğünü ve konumunu alır veya ayarlar. (Devralındığı yer: Panel) |
Site |
Tasarım yüzeyinde işlendiğinde geçerli denetimi barındıran kapsayıcı hakkında bilgi alır. (Devralındığı yer: Control) |
SkinID |
Denetime uygulanacak kaplamayı alır veya ayarlar. (Devralındığı yer: WebControl) |
Style |
Web sunucusu denetiminin dış etiketinde stil özniteliği olarak işlenecek metin öznitelikleri koleksiyonunu alır. (Devralındığı yer: WebControl) |
SupportsDisabledAttribute |
Denetimin özelliği |
TabIndex |
Web sunucusu denetiminin sekme dizinini alır veya ayarlar. (Devralındığı yer: WebControl) |
TagKey |
HtmlTextWriterTag Bu Web sunucusu denetimine karşılık gelen değeri alır. Bu özellik öncelikle denetim geliştiricileri tarafından kullanılır. (Devralındığı yer: WebControl) |
TagName |
Denetim etiketinin adını alır. Bu özellik öncelikle denetim geliştiricileri tarafından kullanılır. (Devralındığı yer: WebControl) |
TemplateControl |
Bu denetimi içeren şablona başvuru alır veya ayarlar. (Devralındığı yer: Control) |
TemplateSourceDirectory |
geçerli sunucu denetimini içeren veya UserControl sanal dizinini Page alır. (Devralındığı yer: Control) |
Title |
Denetimin başlık çubuğunda ImportCatalogPart görünen başlığı alır veya ayarlar. |
ToolTip |
Fare işaretçisi Web sunucusu denetiminin üzerine geldiğinde görüntülenen metni alır veya ayarlar. (Devralındığı yer: WebControl) |
UniqueID |
Sunucu denetimi için benzersiz, hiyerarşik nitelenmiş tanımlayıcıyı alır. (Devralındığı yer: Control) |
UploadButtonText |
Açıklama dosyasının karşıya yüklenmesini Button başlatan denetimin metnini alır veya ayarlar. |
UploadHelpText |
Kullanıcıya açıklama dosyasının nasıl karşıya yüklendiğini bildiren ileti metnini alır veya ayarlar. |
ValidateRequestMode |
Denetimin tarayıcıdan istemci girişini tehlikeli olabilecek değerler için denetlediğini gösteren bir değer alır veya ayarlar. (Devralındığı yer: Control) |
ViewState |
Aynı sayfa için birden çok istekte bir sunucu denetiminin görünüm durumunu kaydetmenize ve geri yüklemenize olanak tanıyan durum bilgileri sözlüğü alır. (Devralındığı yer: Control) |
ViewStateIgnoresCase |
Nesnenin StateBag büyük/küçük harfe duyarlı olup olmadığını gösteren bir değer alır. (Devralındığı yer: Control) |
ViewStateMode |
Bu denetimin görünüm durumu modunu alır veya ayarlar. (Devralındığı yer: Control) |
Visible |
Sunucu denetiminin sayfada kullanıcı arabirimi olarak işlenip işlenmediğini belirten bir değer alır veya ayarlar. (Devralındığı yer: Control) |
WebPartManager |
Sınıfının geçerli örneğine başvuru alır WebPartManager . (Devralındığı yer: CatalogPart) |
Width |
Web sunucusu denetiminin genişliğini alır veya ayarlar. (Devralındığı yer: WebControl) |
Wrap |
İçeriğin panel içinde kaydırılıp kaydırılmadığını belirten bir değer alır veya ayarlar. (Devralındığı yer: Panel) |
Zone |
Denetim içeren bölgeye başvuru CatalogZoneBaseCatalogPart alır. (Devralındığı yer: CatalogPart) |
Yöntemler
AddAttributesToRender(HtmlTextWriter) |
İşlenmek üzere öznitelik listesine arka plan görüntüsü, hizalama, kaydırma ve yön hakkında bilgi ekler. (Devralındığı yer: Panel) |
AddedControl(Control, Int32) |
Nesne koleksiyonuna Controls bir alt denetim eklendikten sonra çağrılır Control . (Devralındığı yer: Control) |
AddParsedSubObject(Object) |
Xml veya HTML gibi bir öğenin ayrıştırıldığını sunucu denetimine bildirir ve öğeyi sunucu denetiminin ControlCollection nesnesine ekler. (Devralındığı yer: Control) |
ApplyStyle(Style) |
Belirtilen stilin boş olmayan öğelerini Web denetimine kopyalar ve denetimin varolan stil öğelerinin üzerine yazar. Bu yöntem öncelikli olarak denetim geliştiricileri tarafından kullanılır. (Devralındığı yer: WebControl) |
ApplyStyleSheetSkin(Page) |
Sayfa stili sayfasında tanımlanan stil özelliklerini denetime uygular. (Devralındığı yer: Control) |
BeginRenderTracing(TextWriter, Object) |
İşleme verilerinin tasarım zamanı izlemeye başlar. (Devralındığı yer: Control) |
BuildProfileTree(String, Boolean) |
Sunucu denetimi hakkında bilgi toplar ve sayfa için izleme etkinleştirildiğinde görüntülenecek özelliğe teslim eder Trace . (Devralındığı yer: Control) |
ClearCachedClientID() |
Önbelleğe alınan ClientID değeri olarak |
ClearChildControlState() |
Sunucu denetiminin alt denetimleri için denetim durumu bilgilerini siler. (Devralındığı yer: Control) |
ClearChildState() |
Tüm sunucu denetiminin alt denetimleri için görünüm durumu ve denetim durumu bilgilerini siler. (Devralındığı yer: Control) |
ClearChildViewState() |
Tüm sunucu denetiminin alt denetimleri için görünüm durumu bilgilerini siler. (Devralındığı yer: Control) |
ClearEffectiveClientIDMode() |
ClientIDMode Geçerli denetim örneğinin ve alt denetimlerin özelliğini olarak Inheritayarlar. (Devralındığı yer: Control) |
CopyBaseAttributes(WebControl) |
Nesne tarafından Style kapsüllenmeyen özellikleri belirtilen Web sunucusu denetiminden bu yöntemin çağrıldığı Web sunucusu denetimine kopyalar. Bu yöntem öncelikle denetim geliştiricileri tarafından kullanılır. (Devralındığı yer: WebControl) |
CreateChildControls() |
ASP.NET sayfa çerçevesi tarafından, geri gönderme veya işleme hazırlığında içerdikleri alt denetimleri oluşturmak üzere birleşim tabanlı uygulama kullanan sunucu denetimlerini bilgilendirmek için çağrılır. (Devralındığı yer: Control) |
CreateControlCollection() |
Sunucu denetiminin alt denetimlerini (hem değişmez değer hem de sunucu) tutmak için yeni ControlCollection bir nesne oluşturur. (Devralındığı yer: Control) |
CreateControlStyle() |
Tüm stille ilgili özellikleri uygulamak için denetim tarafından Panel dahili olarak kullanılan bir stil nesnesi oluşturur. (Devralındığı yer: Panel) |
DataBind() |
Bir veri kaynağını çağrılan sunucu denetimine ve tüm alt denetimlerine bağlar. (Devralındığı yer: Part) |
DataBind(Boolean) |
Bir veri kaynağını çağrılan sunucu denetimine ve tüm alt denetimlerine olayı tetikle DataBinding seçeneğiyle bağlar. (Devralındığı yer: Control) |
DataBindChildren() |
Bir veri kaynağını sunucu denetiminin alt denetimlerine bağlar. (Devralındığı yer: Control) |
Dispose() |
Sunucu denetiminin bellekten serbest bırakılmadan önce son temizleme işlemini gerçekleştirmesini sağlar. (Devralındığı yer: Control) |
EndRenderTracing(TextWriter, Object) |
İşleme verilerinin tasarım zamanı izlemesini sonlandırır. (Devralındığı yer: Control) |
EnsureChildControls() |
Sunucu denetiminin alt denetimler içerip içermediğini belirler. Aksi takdirde alt denetimler oluşturur. (Devralındığı yer: Control) |
EnsureID() |
Atanmış tanımlayıcısı olmayan denetimler için bir tanımlayıcı oluşturur. (Devralındığı yer: Control) |
Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
FindControl(String) |
Belirtilen |
FindControl(String, Int32) |
Geçerli adlandırma kapsayıcısında belirtilen ve parametresinde belirtilen |
Focus() |
Giriş odağını bir denetime ayarlar. (Devralındığı yer: Control) |
GetAvailableWebPartDescriptions() |
Katalogdaki kullanılabilir WebPart denetimlerin açıklama koleksiyonunu döndürür. |
GetDesignModeState() |
Denetimin CatalogPart üst bölgesinin geçerli durumunu alır. (Devralındığı yer: CatalogPart) |
GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
GetRouteUrl(Object) |
Bir yol parametreleri kümesine karşılık gelen URL'yi alır. (Devralındığı yer: Control) |
GetRouteUrl(RouteValueDictionary) |
Bir yol parametreleri kümesine karşılık gelen URL'yi alır. (Devralındığı yer: Control) |
GetRouteUrl(String, Object) |
Bir yol parametreleri kümesine ve yol adına karşılık gelen URL'yi alır. (Devralındığı yer: Control) |
GetRouteUrl(String, RouteValueDictionary) |
Bir yol parametreleri kümesine ve yol adına karşılık gelen URL'yi alır. (Devralındığı yer: Control) |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
GetUniqueIDRelativeTo(Control) |
Belirtilen denetimin özelliğinin UniqueID ön ekli bölümünü döndürür. (Devralındığı yer: Control) |
GetWebPart(WebPartDescription) |
Yöntemine geçirilen açıklamadaki değerleri temel alan bir WebPart denetim başvurusu döndürür. |
HasControls() |
Sunucu denetiminin alt denetimler içerip içermediğini belirler. (Devralındığı yer: Control) |
HasEvents() |
Olayların denetim için mi yoksa alt denetimler için mi kaydedildiğini gösteren bir değer döndürür. (Devralındığı yer: Control) |
IsLiteralContent() |
Sunucu denetiminin yalnızca değişmez değer içeriğini barındırdığını belirler. (Devralındığı yer: Control) |
LoadControlState(Object) |
yöntemi tarafından SaveControlState() kaydedilen önceki bir sayfa isteğinden denetim durumu bilgilerini geri yükler. (Devralındığı yer: Control) |
LoadViewState(Object) |
yöntemiyle SaveViewState() kaydedilmiş önceki bir istekten görünüm durumu bilgilerini geri yükler. (Devralındığı yer: WebControl) |
MapPathSecure(String) |
Bir sanal yolun mutlak veya göreli olarak eşlene olduğu fiziksel yolu alır. (Devralındığı yer: Control) |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
MergeStyle(Style) |
Belirtilen stilin boş olmayan öğelerini Web denetimine kopyalar, ancak denetimin varolan stil öğelerinin üzerine yazılmaz. Bu yöntem öncelikle denetim geliştiricileri tarafından kullanılır. (Devralındığı yer: WebControl) |
OnBubbleEvent(Object, EventArgs) |
Sunucu denetimi olayının sayfanın UI sunucu denetim hiyerarşisine geçirilip geçirilmeyeceğini belirler. (Devralındığı yer: Control) |
OnDataBinding(EventArgs) |
Olayı tetikler DataBinding . (Devralındığı yer: Control) |
OnInit(EventArgs) |
Olayı tetikler Init . (Devralındığı yer: Control) |
OnLoad(EventArgs) |
Olayı tetikler Load . (Devralındığı yer: Control) |
OnPreRender(EventArgs) |
Olayı tetikler PreRender . (Devralındığı yer: CatalogPart) |
OnUnload(EventArgs) |
Olayı tetikler Unload . (Devralındığı yer: Control) |
OpenFile(String) |
Stream Bir dosyayı okumak için kullanılan alır. (Devralındığı yer: Control) |
RaiseBubbleEvent(Object, EventArgs) |
Olayın tüm kaynaklarını ve bilgilerini denetimin üst öğesine atar. (Devralındığı yer: Control) |
RemovedControl(Control) |
Alt denetim nesne koleksiyonundan Controls kaldırıldıktan sonra çağrılır Control . (Devralındığı yer: Control) |
Render(HtmlTextWriter) |
Denetimi belirtilen HTML yazıcısına işler. (Devralındığı yer: WebControl) |
RenderBeginTag(HtmlTextWriter) |
Denetimin HTML açma etiketini Panel belirtilen yazıcıya işler. (Devralındığı yer: Panel) |
RenderChildren(HtmlTextWriter) |
Sunucu denetiminin alt öğelerinin içeriğini sağlanan bir HtmlTextWriter nesneye aktarır ve istemcide işlenecek içeriği yazar. (Devralındığı yer: Control) |
RenderContents(HtmlTextWriter) |
Denetimin içeriğini belirtilen yazıcıya işler. Bu yöntem öncelikle denetim geliştiricileri tarafından kullanılır. (Devralındığı yer: WebControl) |
RenderControl(HtmlTextWriter) |
Sunucu denetimi içeriğini sağlanan HtmlTextWriter bir nesneye aktarır ve izleme etkinse denetimle ilgili izleme bilgilerini depolar. (Devralındığı yer: Control) |
RenderControl(HtmlTextWriter, ControlAdapter) |
Sağlanan bir nesneyi kullanarak sağlanan HtmlTextWriter bir nesneye sunucu denetimi içeriği çıkışı sağlar ControlAdapter . (Devralındığı yer: Control) |
RenderEndTag(HtmlTextWriter) |
Denetimin HTML kapanış etiketini Panel belirtilen yazıcıya işler. (Devralındığı yer: Panel) |
ResolveAdapter() |
Belirtilen denetimin işlenmesinden sorumlu denetim bağdaştırıcısını alır. (Devralındığı yer: Control) |
ResolveClientUrl(String) |
Tarayıcı tarafından kullanılabilecek bir URL alır. (Devralındığı yer: Control) |
ResolveUrl(String) |
URL'yi istekte bulunan istemcide kullanılabilen bir URL'ye dönüştürür. (Devralındığı yer: Control) |
SaveControlState() |
Sayfanın sunucuya geri gönderildiği zamandan bu yana gerçekleşen tüm sunucu denetim durumu değişikliklerini kaydeder. (Devralındığı yer: Control) |
SaveViewState() |
Yöntemi çağrıldıktan sonra TrackViewState() değiştirilen tüm durumları kaydeder. (Devralındığı yer: WebControl) |
SetDesignModeState(IDictionary) |
Denetim için tasarım zamanı verilerini ayarlar. (Devralındığı yer: CatalogPart) |
SetRenderMethodDelegate(RenderMethod) |
Sunucu denetimini ve içeriğini üst denetimine işlemek için bir olay işleyicisi temsilcisi atar. (Devralındığı yer: Control) |
SetTraceData(Object, Object) |
İzleme veri anahtarını ve izleme verisi değerini kullanarak işleme verilerinin tasarım zamanı izlemesi için izleme verilerini ayarlar. (Devralındığı yer: Control) |
SetTraceData(Object, Object, Object) |
İzlenen nesneyi, izleme veri anahtarını ve izleme verisi değerini kullanarak işleme verilerinin tasarım zamanı izlemesi için izleme verilerini ayarlar. (Devralındığı yer: Control) |
ToString() |
Geçerli nesneyi temsil eden dizeyi döndürür. (Devralındığı yer: Object) |
TrackViewState() |
Denetimin, nesnenin ViewState özelliğinde depolanabilmeleri için görünüm durumundaki değişiklikleri izlemesine neden olur. (Devralındığı yer: WebControl) |
Ekinlikler
DataBinding |
Sunucu denetimi bir veri kaynağına bağlandığında gerçekleşir. (Devralındığı yer: Control) |
Disposed |
ASP.NET sayfası istendiğinde sunucu denetimi yaşam döngüsünün son aşaması olan bellekten bir sunucu denetimi serbest bırakıldığında gerçekleşir. (Devralındığı yer: Control) |
Init |
Sunucu denetimi başlatıldığında gerçekleşir ve bu, yaşam döngüsünün ilk adımıdır. (Devralındığı yer: Control) |
Load |
Sunucu denetimi nesneye Page yüklendiğinde gerçekleşir. (Devralındığı yer: Control) |
PreRender |
Nesne yüklendikten sonra Control ancak işlemeden önce gerçekleşir. (Devralındığı yer: Control) |
Unload |
Sunucu denetimi bellekten kaldırıldığında gerçekleşir. (Devralındığı yer: Control) |
Belirtik Arabirim Kullanımları
IAttributeAccessor.GetAttribute(String) |
Belirtilen ada sahip Web denetiminin özniteliğini alır. (Devralındığı yer: WebControl) |
IAttributeAccessor.SetAttribute(String, String) |
Web denetiminin özniteliğini belirtilen ada ve değere ayarlar. (Devralındığı yer: WebControl) |
ICompositeControlDesignerAccessor.RecreateChildControls() |
Tasarımcının geliştiricisinin bileşik parça denetimi için denetimin alt denetimlerini tasarım yüzeyinde yeniden oluşturmasına olanak tanır. (Devralındığı yer: Part) |
IControlBuilderAccessor.ControlBuilder |
Bu üyenin açıklaması için bkz ControlBuilder. . (Devralındığı yer: Control) |
IControlDesignerAccessor.GetDesignModeState() |
Bu üyenin açıklaması için bkz GetDesignModeState(). . (Devralındığı yer: Control) |
IControlDesignerAccessor.SetDesignModeState(IDictionary) |
Bu üyenin açıklaması için bkz SetDesignModeState(IDictionary). . (Devralındığı yer: Control) |
IControlDesignerAccessor.SetOwnerControl(Control) |
Bu üyenin açıklaması için bkz SetOwnerControl(Control). . (Devralındığı yer: Control) |
IControlDesignerAccessor.UserData |
Bu üyenin açıklaması için bkz UserData. . (Devralındığı yer: Control) |
IDataBindingsAccessor.DataBindings |
Bu üyenin açıklaması için bkz DataBindings. . (Devralındığı yer: Control) |
IDataBindingsAccessor.HasDataBindings |
Bu üyenin açıklaması için bkz HasDataBindings. . (Devralındığı yer: Control) |
IExpressionsAccessor.Expressions |
Bu üyenin açıklaması için bkz Expressions. . (Devralındığı yer: Control) |
IExpressionsAccessor.HasExpressions |
Bu üyenin açıklaması için bkz HasExpressions. . (Devralındığı yer: Control) |
IParserAccessor.AddParsedSubObject(Object) |
Bu üyenin açıklaması için bkz AddParsedSubObject(Object). . (Devralındığı yer: Control) |
Uzantı Metotları
FindDataSourceControl(Control) |
Belirtilen denetim için veri denetimiyle ilişkili veri kaynağını döndürür. |
FindFieldTemplate(Control, String) |
Belirtilen denetimin adlandırma kapsayıcısında belirtilen sütun için alan şablonunu döndürür. |
FindMetaTable(Control) |
İçeren veri denetimi için metatablo nesnesini döndürür. |
GetDefaultValues(INamingContainer) |
Belirtilen veri denetimi için varsayılan değerlerin koleksiyonunu alır. |
GetMetaTable(INamingContainer) |
Belirtilen veri denetimi için tablo meta verilerini alır. |
SetMetaTable(INamingContainer, MetaTable) |
Belirtilen veri denetimi için tablo meta verilerini ayarlar. |
SetMetaTable(INamingContainer, MetaTable, IDictionary<String,Object>) |
Belirtilen veri denetimi için tablo meta verilerini ve varsayılan değer eşlemesini ayarlar. |
SetMetaTable(INamingContainer, MetaTable, Object) |
Belirtilen veri denetimi için tablo meta verilerini ve varsayılan değer eşlemesini ayarlar. |
TryGetMetaTable(INamingContainer, MetaTable) |
Tablo meta verilerinin kullanılabilir olup olmadığını belirler. |
EnableDynamicData(INamingContainer, Type) |
Belirtilen veri denetimi için Dinamik Veri davranışını etkinleştirir. |
EnableDynamicData(INamingContainer, Type, IDictionary<String,Object>) |
Belirtilen veri denetimi için Dinamik Veri davranışını etkinleştirir. |
EnableDynamicData(INamingContainer, Type, Object) |
Belirtilen veri denetimi için Dinamik Veri davranışını etkinleştirir. |