smileNewfreedom

블로그 이미지
freedom 모든 자유와 시간을 위해.....
by 다크포스
12-04 01:23
  • 680,205Total hit
  • 0Today hit
  • 5Yesterday hit

CALENDAR

«   2021/12   »
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  

'TreeView'에 해당되는 글 2건

  1. 2008.03.28
    .NET 2.0 에서 제공되는 TreeView사용법
  2. 2008.03.24
    Create Multi-Level Tree View Navigation in MOSS 2007 멀티 - 레벨 트리보기에서 탐색을 만들기

2.0에서는 개발자가 메뉴부분을 구성하는데 있어서 굉장히 간편한 컨트롤이 제공 됩니다.

그중 하나가 TreeView인데요. 반복적인 코드를 피할려면 마스터 페이지에 넣고 사용하는게 더욱 좋은 컨트롤 입니다.

일단 TreeView는 다른 탐색컨트롤과 마찬가지로 "Web.sitemap"이 필요 합니다.

루트에서 "새 항목 추가"를 누르시면 여러가지 아이템들이 있는데 그중 "사이트 맵"을 선택하시면 파일이름에 "Web.sitemap"라고 자동으로 나오는 것을 볼 수 있습니다.

"사이트 맵"파일을 추가하시고 코드를 보게 되면 아래와 같다.

01: <?xml version="1.0" encoding="utf-8" ?>

02:<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >

03:    <siteMapNode url="" title=""  description="">

04:        <siteMapNode url="" title=""  description="" />

05:        <siteMapNode url="" title=""  description="" />

06:    </siteMapNode>

07:</siteMap>


위와 같은 내용을 볼 수 있으실 겁니다. XML문서로 "사이트 맵"을 위한 문서인데요.

XML은 루트를 가져야 함으로 3번째 라인과 6번째 라인의 큰 메뉴를 가지게 됩니다. 그안에 4, 5번째라인 처럼 하나의 노드를 가지게 되는데요.

이 노드들의 속성들안에 페이지들의 파일명과 이름을 넘겨주면 사용가능한 "사이트 맵"파일이 됩니다.

그럼 예를 들어 설명하겠습니다.

 Home ----- 자기소개

               -- 게시판

일단 3개의 페이지가 필요 하겠죠? 그럼 Home은 "Default.aspx"로 하고 자기소개는 "Introduce.aspx"로 하고 마지막으로 게시판은 "Board.aspx"로 하겠습니다.

세개의 페이지를 생성 하셨으면.

3번째라인의 노드에 속성을 각각 부여 합니다. 'url'에는 해당 페이지의 주소를 넣는데 루트에 파일을 생성 했으므로 "~/Default.aspx"를 넣습니다.

여기서 '~/'를 넣는건 해당 홈페이지의 루트에 있다는걸 말해줍니다. 만일 루트뒤에 "Profile"이라는 폴더를 추가하고 거기에 "Default.aspx"를 사용 하시려면 "~/Profile/Default.aspx"로 해주면 됩니다.

Home의 페이지를 지정해 줬으면 Home의 이름을 지정해 줘야 겠죠. 'TreeView'에 표시될 이름을 지정하는 것은 'title'에 "Home"이라고 넣어 주면 됩니다.

그리고 제일 마지막에 있는 'description'은 마우스를 해당 메뉴에 올려 놨을때 표시되는 속성입니다.

이런식으로 "Web.sitemap"을 완성 시키면 아래와 같은 내용으로 됩니다.

01:<?xml version="1.0" encoding="utf-8" ?>

02:<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >

03:    <siteMapNode url="~/Default.aspx" title="Home"  description="웹사이트의 첫 페이지 입니다.">

04:        <siteMapNode url="~/Introduce.aspx" title="자기소개"  description="웹사이트의 주인장 소개 입니다." />

05:        <siteMapNode url="~/Board.aspx" title="게시판"  description="웹사이트에 질문을 올리는 곳 입니다." />

06:    </siteMapNode>

07:</siteMap>

위와 같이 완성이 되었으면 각각의 페이지에 "TreeView"를 올려 놔야겠죠?

올리기전에 필요한 컨틀롤이 있습니다.

디자인 모드에서 왼쪽의 "데이터"부분에 "SiteMapDataSource"를 추가해 주셔야 합니다.

"SiteMapDataSource"는 어느 위치에 있던지 상관이 없으며, "Web.sitemap"을 따로 지정해주지 않아도 기본으로 루트의 "Web.sitemap"를 찾아서 데이터를 가져옵니다.

이 데이터를 바인딩 하는것이 "TreeView"인데 위의 "SiteMapDataSource"를 추가하셨으면 "TreeView"컨트롤을 올립니다.

"TreeView"는 자동으로 "SiteMapDataSource"을 가져오지 않습니다. 그래서 "SiteMapDataSource"의 ID를 지정해주는데. 이름을 바꾸지 않으셨으면 "SiteMapDataSource1"란 ID로 생성이 되었을 것입니다. 이 아이디를 올려놓은 "TreeView"의 속성창을 보면있는 "DataSourceID"에 넣으면 그걸로 끝 입니다.


장황하게 말은 많았지만 아주 간편한 방법이죠. 또한 "TreeView"의 색상이나 스타일도 VS2005의 스마트 태그에 "AutoFormat(자동서식)"을 이용하여 쉽게 바꿀 수 있습니다. 접었다 폈다하는 과거에는 따로 넣어야 했던 기능들도 자동으로 구현이 되구요. 이 컨트롤을 데이터 소스와 함께 마스터 페이지에 올려 놓으면 귀찮게 코딩을 하지 않아도.

트리 형식의 메뉴를 구현 할 수 있습니다. 또한 자신이 현재보고 있는 페이지도 자동으로 표시가 가능하구요~.

*******************************************************************************************************

<siteMap defaultProvider="XmlSiteMapProvider" enabled="true">
<providers>
<add name="XmlSiteMapProvider" description="SiteMap provider which reads in .sitemap XML files." type="System.Web.XmlSiteMapProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"

===== 이부분입니다.==========
siteMapFile="~/Master/Web.sitemap"
========================

securityTrimmingEnabled="true"/>
</providers>
</siteMap>

web.config 환경설정 파일에 위의 코드를 입력하면 됩니다.
속성중에 siteMapFile에다가 원하는 위치를 적어주시면 되겠죠? ^^

출처 : http://duraboys.tistory.com/329

TRACKBACK 0 AND COMMENT 0



 이 문서의 목적은이 윤곽을 수정하는 데 필요한 세부 사항을 빠른 실행을 사용하는 멀티 - 레벨 asp.net 2.0 트리보기 컨트롤합니다. This will be extremely useful in publishing site applications. 이것은 매우 유용한 사이트에 응용 프로그램을 게시합니다.

Let's go ahead and begin modifying the master page necessary. 말하라를 시작하자 마스터 페이지를 수정해야합니다. What, you don't know about the master page, that's ok, I will post another blog entry outlining this but for now, open your sharepoint designer and browse to the top-level site in question. 뭐, 당신의 마스터 페이지에 대해서 알고 싶지 않아, 괜찮 아요, 나는 또 다른 블로그 항목을 게시할 예정입니다 개요 본하지만 지금은 여십시오과 같이하십시오 톱 - 레벨의 사이트에 질문을로 이동합니다. Remember it is my opinion that it is always good to create your own master page and css styles. 기억이 내 의견을 듣고 그것은 그것이 항상 좋은을 만들 수있습니다 스타일을 자신의 마스터 페이지 및 전투 근무 지원합니다. The location of the master page is likely to be in _catalogs\masterpage 의 위치는 마스터 페이지가가 될 가능성이 _catalogs \ masterpage


사진 공유 및 비디오를 호스팅에서 photobucket


You can replace the AspMenu control with a TreeView control to display a familiar tree view with nodes that collapse and expand. aspmenu 컨트롤을 대체할 수있습니다 친숙한 트리를 표시하는 컨트롤을 treeview 노드의 붕괴와 함께보기 및 확장합니다.

To replace the Menu control with the TreeView control 제어와 통제의 메뉴를 교체 treeview

  1. Open the master page you are using and find the ContentPlaceHolder container control whose ID is PlaceHolderLeftNavBar . 마스터 페이지를 열고 컨테이너 컨트롤을 사용하시는을 찾아서이 contentplaceholder 누구의 식별은 placeholderleftnavbar합니다.
  2. In the AspMenu control, find the PlaceHolderLeftNavBar control whose ID is QuickLaunchMenu , and replace SharePoint:AspMenu with ASP:TreeView in both the opening and closing tags. aspmenu 제어, placeholderleftnavbar 컨트롤을 찾을 누구의 식별은 quicklaunchmenu, 그리고 교체 sharepoint : aspmenu와 asp : treeview는 여는 태그와 닫는 태그를 모두합니다.
  3. Remove the following LevelMenuItemStyles element and its contents from the new TreeView element. 그 내용을 다음과 같은 levelmenuitemstyles 요소를 제거하고 새로운 treeview 요소로부터합니다.

    Copy Code 복사 코드를

    <LevelMenuItemStyles> <asp:MenuItemStyle CssClass="ms-navheader"/> <asp:MenuItemStyle CssClass="ms-navitem"/> </LevelMenuItemStyles> <LevelSubMenuStyles> <asp:SubMenuStyle CssClass="ms-navSubMenu1"/> <asp:SubMenuStyle CssClass="ms-navSubMenu2"/> </LevelSubMenuStyles> <levelmenuitemstyles> <asp:menuitemstyle cssclass="ms-navheader"/> <asp:menuitemstyle cssclass="ms-navitem"/> </ levelmenuitemstyles> <levelsubmenustyles> <asp:submenustyle cssclass="ms-navsubmenu1"/> < asp : submenustyle cssclass = "ms - navsubmenu2"/> </ levelsubmenustyles>

  4. Edit the web.config web.config를 수정

    Edit the web.config, look for a named provider definition: "CurrentNavSiteMapProviderNoEncode", add a single property attribute: RequireUniqueKeysForNodes="true"The TreeView control provides properties that allow you to easily customize the control. web.config를 수정을 찾아 이름을 공급자의 정의 : "currentnavsitemapprovidernoencode", 추가하는 하나의 속성 특성 : requireuniquekeysfornodes = "진정한"treeview 제어를 제공합니다을 쉽게 정의할 수있는 속성을 제어합니다. For more information about Windows SharePoint Services master pages and site customization, see Master Pages . 에 대한 자세한 windows sharepoint 서비스를 마스터 페이지와 사이트를 사용자 정의, 마스터 페이지를 참조하십시오.

  5. Modify master page once more to change datasource 마스터 페이지를 수정 데이터 소스를 변경을 한 번 더

    Modify the data source that the Menu/TreeView is hooked up to, it should be immediately beneath it. 데이터 소스를 수정하는 메뉴 / treeview가에 매여 있고, 바로 아래되어야합니다. Change the SiteMapProvider="CurrentNavSiteMapProvider" to SiteMapProvider="CurrentNavSiteMapProviderNoEncode" 변경 sitemapprovider = "currentnavsitemapprovider"을 sitemapprovider = "currentnavsitemapprovidernoencode"

  6. Reset IIS for changes to take effect. iis를 재설정에 대한 변경 내용을 적용합니다.

    The TreeView control provides properties that allow you to easily customize the control. the treeview 제어를 제공합니다을 쉽게 정의할 수있는 속성을 제어합니다. For more information about Windows SharePoint Services master pages and site customization, see Master Pages . 에 대한 자세한 windows sharepoint 서비스를 마스터 페이지와 사이트를 사용자 정의, 마스터 페이지를 참조하십시오.


    출처 : http://translate.google.com/translate?hl=ko&sl=en&u=http://codeintegrators.blogspot.com/2007/05/create-multi-level-tree-view-navigation.html&sa=X&oi=translate&resnum=6&ct=result&prev=/search%3Fq%3DMOSS%2BNavigator%2BCustom%2BTree%2BControl%26complete%3D1%26hl%3Dko%26lr%3D%26newwindow%3D1

TRACKBACK 0 AND COMMENT 0




ARTICLE CATEGORY

분류 전체보기 (534)
멋진 사진들 (8)
배경화면들 (3)
.NET (112)
연애이슈 (65)
게임관련 (15)
경제 이슈 (60)
모델 (0)
사진(취미) (14)
노래 (8)
호주워킹홀리데이 (11)
Javascript (2)
Ajax (4)
스포츠 (74)
우주/과학/생활 (95)
Windows 2008 (19)
Silverlight (2)
여행 (6)
MS 자격증 (2)
해외이슈 (4)
IT정보 (16)
Server (5)
애니매이션 (9)