모든 노드가있는 SiteMap이 있습니다. 탐색을 위해 SiteMap에 연결된 TreeView 컨트롤을 사용하고 있습니다. 이제 특정 노드가 TreeView에 나타나지 않도록 숨기려고합니다. 이것을 할 수 있습니까?TreeView 컨트롤에서 ASP.NET SiteMap 노드 숨기기
0
A
답변
6
네, 확실히 가능합니다. 우리가하는 방법은 우리가 맵에 표시하지 않으려는 노드 (너무 다양한 장소에서) 사용자 정의 "IsPhantom"속성을 추가하는 것입니다
이<siteMapNode url="~/Welcome.aspx" title="Welcome" description="" isPhantom="true" />
그런 다음 사이트 맵 제어에 사용 다음 코드를 사용하여 "IsPhantom"속성이있는 노드를 제거하십시오.
protected void Page_Load(object sender, EventArgs e)
{
TreeView1.TreeNodeDataBound += new TreeNodeEventHandler(TreeView1_TreeNodeDataBound);
SiteMapSource.Provider = this.CurrentProvider;
}
protected void TreeView1_TreeNodeDataBound(object sender, TreeNodeEventArgs e)
{
SiteMapNode thisMapNode = (SiteMapNode)e.Node.DataItem;
TreeNode parentTreeNode = e.Node.Parent;
if (thisMapNode["isPhantom"] != null && thisMapNode["isPhantom"].ToLower().Equals(bool.TrueString.ToLower()) && parentTreeNode != null)
parentTreeNode.ChildNodes.Remove(e.Node);
}
0
어떤 기준을 기반으로합니까? 특정 단일 노드 만 숨기려면 TreeView의 NodeDataBound 이벤트에 가입하고 전체 항목 (노드)을 Visible = false로 설정하십시오.
더 나은 방법으로 이것을 수행하고 더 많은 유연성을 제공해야하는 경우 고유 한 SiteMapProvider를 구현하는 것이 좋습니다. 그런 다음 각 사이트 맵 노드에 대해 ShowInNavigation 속성을 가질 수 있으며 사이트 맵을 만들 때 설정할 수 있습니다.
관련 문제
- 1. C#의 TreeView 컨트롤에서 노드 검사
- 2. ASP.NET Telerik TreeView 노드 커서
- 3. ASP.NET SiteMap
- 4. asp.net treeview 스왑 노드 텍스트 및 아이콘
- 5. 숨기기 노드
- 6. ASP.NET MVC SiteMap 공급자 - 레이저
- 7. TreeView 및 SiteMap : 줄 바꿈을 추가하는 방법?
- 8. winform에서 TreeView 노드 매핑
- 9. Jquery TreeView 노드 추가
- 10. Treeview prevent 노드 붕괴
- 11. C# TreeView 노드
- 12. TreeView 사용자 정의 노드
- 13. ActionResult에서 사이트 맵 노드 만들기/제거 - ASP.NET MVC SiteMap 공급자
- 14. asp.net treeview 확인란 선택
- 15. ASPNET TreeView 확장 된 노드 스타일
- 16. asp.net mvc2 sitemap
- 17. SiteMap HtmlHelper ASP.NET MVC
- 18. ASP.NET MVC SiteMap
- 19. Sitemap 정렬 하위 요소의 수를 기반으로 노드
- 20. .sitemap 파일로 ASP.Net 메뉴 제어
- 21. Ninject 컨트롤러가있는 ASP.NET MVC SiteMap 팩토리 오류
- 22. Silverlight TreeView 노드 확장 감지
- 23. WPF의 노드 간 선 TreeView
- 24. TreeView 하위 노드 채우기 문제
- 25. Drupal : 노드 제목을 숨기기
- 26. 검색에서 Drupal 노드 숨기기
- 27. ASP.NET TreeView 컨트롤에서 필드의 기본 할당을 변경하려면 어떻게해야합니까?
- 28. Asp.net 4 TreeView SelectedNodeStyle ImageUrl 무시됩니다.
- 29. 웹 컨트롤 TreeView 프로그래밍 방식으로 노드 선택
- 30. ASP.NET Sitemap .ResourceKey 속성이 null입니다.
기본적으로 세 가지 메뉴 항목을 표시하고 싶습니다. 사용자 크레아 사용자 사이트 맵에는 '사용자 편집'을 포함하고 싶지만 TreeView에는 포함시키지 않습니다. – ntombela
나는 아직도 당신이 원하는 것을 이해하지 못합니다. – Slavo