SiteMapPath.InitializeItem(SiteMapNodeItem) Yöntem
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.
Düğüm işlevini ve düğüm için belirtilen şablonları ve stilleri temel alan bir alt denetim kümesiyle, bir öğesini temsil eden bir SiteMapNodeItemWeb sunucusu denetimi olan bir SiteMapNodeöğesini doldurur.
protected:
virtual void InitializeItem(System::Web::UI::WebControls::SiteMapNodeItem ^ item);
protected virtual void InitializeItem(System.Web.UI.WebControls.SiteMapNodeItem item);
abstract member InitializeItem : System.Web.UI.WebControls.SiteMapNodeItem -> unit
override this.InitializeItem : System.Web.UI.WebControls.SiteMapNodeItem -> unit
Protected Overridable Sub InitializeItem (item As SiteMapNodeItem)
Parametreler
- item
- SiteMapNodeItem
SiteMapNodeItem başlatacak.
Örnekler
Aşağıdaki kod örneği, 'den InitializeItemtüretilen bir denetime işlevsellik eklemek için yönteminin nasıl geçersiz kılındığını SiteMapPath gösterir. Bu kod örneği, sınıfı için SiteMapPath sağlanan daha büyük bir örneğin parçasıdır.
// Override the InitializeItem method to add a PathSeparator
// and DropDownList to the current node.
protected override void InitializeItem(SiteMapNodeItem item) {
// The only node that must be handled is the CurrentNode.
if (item.ItemType == SiteMapNodeItemType.Current)
{
HyperLink hLink = new HyperLink();
// No Theming for the HyperLink.
hLink.EnableTheming = false;
// Enable the link of the SiteMapPath is enabled.
hLink.Enabled = this.Enabled;
// Set the properties of the HyperLink to
// match those of the corresponding SiteMapNode.
hLink.NavigateUrl = item.SiteMapNode.Url;
hLink.Text = item.SiteMapNode.Title;
if (ShowToolTips) {
hLink.ToolTip = item.SiteMapNode.Description;
}
// Apply styles or templates to the HyperLink here.
// ...
// ...
// Add the item to the Controls collection.
item.Controls.Add(hLink);
AddDropDownListAfterCurrentNode(item);
}
else {
base.InitializeItem(item);
}
}
' Override the InitializeItem method to add a PathSeparator
' and DropDownList to the current node.
Protected Overrides Sub InitializeItem(item As SiteMapNodeItem)
' The only node that must be handled is the CurrentNode.
If item.ItemType = SiteMapNodeItemType.Current Then
Dim hLink As New HyperLink()
' No Theming for the HyperLink.
hLink.EnableTheming = False
' Enable the link of the SiteMapPath is enabled.
hLink.Enabled = Me.Enabled
' Set the properties of the HyperLink to
' match those of the corresponding SiteMapNode.
hLink.NavigateUrl = item.SiteMapNode.Url
hLink.Text = item.SiteMapNode.Title
If ShowToolTips Then
hLink.ToolTip = item.SiteMapNode.Description
End If
' Apply styles or templates to the HyperLink here.
' ...
' ...
' Add the item to the Controls collection.
item.Controls.Add(hLink)
AddDropDownListAfterCurrentNode(item)
Else
MyBase.InitializeItem(item)
End If
End Sub
Açıklamalar
yöntemi, InitializeItem öğesinin temsil ettiği düğümün işlevsel türünü denetler SiteMapNodeItemTypeve bu tür bir düğüm için tanımlanan tüm şablonları veya stilleri uygular.
SiteMapNodeItem öğesi bir Root öğe türüne sahipse, bir HyperLink alt denetim oluşturulur ve RootNodeTemplate uygulanabilirRootNodeStyle. RootNodeTemplate ayarlanırsa, ITemplate düğüme uygulanır. bunun yerine RootNodeStyle ayarlanır, tanımlı NodeStyle ve uygulanan herhangi bir ile birleştirilir. Son olarak, hiçbir şablon veya stil tanımlanmadıysa, düğümdeki değerlerle temel HyperLink bir denetim oluşturulur ve başlatılır.
SiteMapNodeItem öğe türüne sahipseCurrent, dönüş değerine Literalbağlı olarak bir HyperLink veya RenderCurrentNodeAsLink alt denetimi oluşturulur. Ardından veya CurrentNodeTemplateCurrentNodeStyle uygulanabilir. CurrentNodeTemplate ayarlanırsa, ITemplate düğüme uygulanır. bunun yerine CurrentNodeStyle ayarlanırsa, tanımlanan NodeStyle ve uygulanan herhangi bir ile birleştirilir.
SiteMapNodeItem öğesi bir Parent öğe türüne sahipse, bir HyperLink alt denetim oluşturulur ve NodeTemplateNodeStyle uygulanabilir. NodeTemplate ayarlanırsa, ITemplate düğüme uygulanır. bunun yerine NodeStyle ayarlanırsa, uygulanır.
Son olarak, öğesi bir SiteMapNodeItem öğe türüne sahipsePathSeparator, bir Literal alt denetim oluşturulur ve PathSeparatorTemplate ve PathSeparatorStyle bir Parent düğüm türü için tanımlanan genel kurallara göre uygulanır.
InitializeItem Tek tek SiteMapNodeItem nesneleri işlemek için yöntemini geçersiz kılın. sınıfının tasarımı, nesnelerin nasıl oluşturulduğu ve denetime SiteMapNodeItem nasıl SiteMapPath eklendiği üzerinde daha kapsamlı bir denetim gerektiriyorsa, yöntemini geçersiz kılınCreateControlHierarchy.