SiteMapPath.InitializeItem(SiteMapNodeItem) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
SiteMapNodeItem를 나타내는 웹 서버 컨트롤인 SiteMapNode을 노드의 기능 및 지정된 노드 템플릿과 스타일을 기반으로 하는 자식 컨트롤 집합으로 채웁니다.
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)
매개 변수
- item
- SiteMapNodeItem
초기화할 SiteMapNodeItem입니다.
예제
다음 코드 예제에서는 재정의 하는 방법에 설명 합니다 InitializeItem 에서 파생 되는 컨트롤에 기능을 추가 하는 방법 SiteMapPath합니다. 이 코드 예제는에 대해 제공 된 큰 예제의 일부는 SiteMapPath 클래스입니다.
// 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
설명
합니다 InitializeItem 메서드를 확인 하 여 항목을 나타내는 노드의 기능 유형을 결정 합니다 SiteMapNodeItemType, 템플릿 또는 노드의 종류에 대해 정의 된 스타일을 적용 합니다.
경우는 SiteMapNodeItem 에 Root 형식 항목을 HyperLink 자식 컨트롤을 만든 및 RootNodeTemplate 및 RootNodeStyle 적용 될 수 있습니다. 경우는 RootNodeTemplate 설정 되어 해당 ITemplate 노드에 적용 됩니다. 대신 합니다 RootNodeStyle 설정에 정의 된 병합 된 NodeStyle 적용 합니다. 마지막으로 없습니다 템플릿이나 스타일을 정의한 경우, 기본 HyperLink 컨트롤 생성 되 고 노드 값을 사용 하 여 초기화 합니다.
경우는 SiteMapNodeItem 에 Current 항목 형식이 Literal 또는 HyperLink 의 반환 값에 따라 자식 컨트롤을 만든 RenderCurrentNodeAsLink합니다. 다음 중 하나는 CurrentNodeTemplate 또는 CurrentNodeStyle 적용 될 수 있습니다. 경우는 CurrentNodeTemplate 설정 되어 해당 ITemplate 노드에 적용 됩니다. 대신 합니다 CurrentNodeStyle 설정에 정의 된 병합 된 NodeStyle 적용 합니다.
경우는 SiteMapNodeItem 에 Parent 항목 형식이 HyperLink 자식 컨트롤을 만들 및 NodeTemplate 및 NodeStyle 적용 될 수 있습니다. 경우는 NodeTemplate 설정 되어 해당 ITemplate 노드에 적용 됩니다. 그렇지 않고는 NodeStyle 설정 적용 됩니다.
마지막으로, 경우는 SiteMapNodeItem 에 PathSeparator 항목 형식이 Literal 자식 컨트롤을 만들 및 PathSeparatorTemplate 및 PathSeparatorStyle 에 대해 정의 된 동일한 일반 규칙에 따라 적용 됩니다는 Parent 노드 형식.
재정의 된 InitializeItem 개별 조작 방법 SiteMapNodeItem 개체입니다. 클래스의 디자인 방법을 보다 더 광범위 한 컨트롤에 필요한 경우 SiteMapNodeItem 개체를 만들어에 추가 합니다 SiteMapPath 제어를 재정의 합니다 CreateControlHierarchy 메서드.
적용 대상
추가 정보
.NET