다음을 통해 공유


MenuItemBinding 클래스

정의

Menu 컨트롤에서 데이터 항목과 데이터 항목이 바인드되는 메뉴 항목 간의 관계를 정의합니다. 이 클래스는 상속될 수 없습니다.

public ref class MenuItemBinding sealed : ICloneable, System::Web::UI::IDataSourceViewSchemaAccessor, System::Web::UI::IStateManager
public sealed class MenuItemBinding : ICloneable, System.Web.UI.IDataSourceViewSchemaAccessor, System.Web.UI.IStateManager
type MenuItemBinding = class
    interface IStateManager
    interface ICloneable
    interface IDataSourceViewSchemaAccessor
Public NotInheritable Class MenuItemBinding
Implements ICloneable, IDataSourceViewSchemaAccessor, IStateManager
상속
MenuItemBinding
구현

예제

다음 코드 예제에 사용 하는 방법을 보여 줍니다. MenuItemBinding 개체의 필드 간의 관계를 정의 하는 XmlDataSource 컨트롤 및 메뉴 항목에는 Menu 제어 합니다. 제대로 작동 하려면이 예제에서는 Menu.xml 라는 파일에 아래 샘플 XML 데이터를 복사 해야 합니다.


<%@ page language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>MenuItemBinding Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <h3>MenuItemBinding Example</h3>

      <asp:menu id="NavigationMenu"
        datasourceid="MenuSource"
        runat="server">
        
        <DataBindings>
        
          <asp:menuitembinding datamember="MapHomeNode"
            formatstring="({0})" 
            textfield="Title"
            valuefield="Description"
            imageurlfield="ImageUrl"
            tooltipfield="ToolTip"
            target="_self" />
          <asp:menuitembinding datamember="MapNode" 
            depth="1"
            formatstring="[{0}]" 
            textfield="Title"
            valuefield="Description"
            imageurlfield="ImageUrl"
            tooltipfield="ToolTip"
            target="_blank"/>
          <asp:menuitembinding datamember="MapNode" 
            depth="2"
            formatstring="<{0}>" 
            textfield="Title"
            valuefield="Description"
            imageurlfield="ImageUrl"
            tooltipfield="ToolTip"
            target="_blank"/>
          
        </DataBindings>
        
      </asp:menu>

      <asp:xmldatasource id="MenuSource"
        datafile="Menu.xml"
        runat="server"/> 

    </form>
  </body>
</html>

<%@ page language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>MenuItemBinding Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <h3>MenuItemBinding Example</h3>

      <asp:menu id="NavigationMenu"
        datasourceid="MenuSource"
        runat="server">
        
        <DataBindings>
        
          <asp:menuitembinding datamember="MapHomeNode"
            formatstring="({0})" 
            textfield="Title"
            valuefield="Description"
            imageurlfield="ImageUrl"
            tooltipfield="ToolTip"
            target="_self" />
          <asp:menuitembinding datamember="MapNode" 
            depth="1"
            formatstring="[{0}]" 
            textfield="Title"
            valuefield="Description"
            imageurlfield="ImageUrl"
            tooltipfield="ToolTip"
            target="_blank"/>
          <asp:menuitembinding datamember="MapNode" 
            depth="2"
            formatstring="<{0}>" 
            textfield="Title"
            valuefield="Description"
            imageurlfield="ImageUrl"
            tooltipfield="ToolTip"
            target="_blank"/>
          
        </DataBindings>
        
      </asp:menu>

      <asp:xmldatasource id="MenuSource"
        datafile="Menu.xml"
        runat="server"/> 

    </form>
  </body>
</html>

다음 코드는 이전 예제에 대 한 사이트 맵 데이터 샘플입니다.

<MapHomeNode ImageUrl="~\Images\Home.gif"

Title="Home"

Description="Root Page"

ToolTip="Home Page">

<MapNode ImageUrl="~\Images\Music.gif"

Title="Music"

Description="Music Category"

ToolTip="Music Page">

<MapNode ImageUrl="~\Images\Classical.gif"

Title="Classical"

Description="Classical Section"

ToolTip="Classical Page"/>

<MapNode ImageUrl="~\Images\Rock.gif"

Title="Rock"

Description="Rock Section"

ToolTip="Rock Page"/>

<MapNode ImageUrl="~\Images\Jazz.gif"

Title="Jazz"

Description="Jazz Section"

ToolTip="Jazz Page"/>

</MapNode>

<MapNode ImageUrl="~\Images\Movies.gif"

Title="Movies"

Description="Movies Category"

ToolTip="Movies Page">

<MapNode ImageUrl="~\Images\Action.gif"

Title="Action"

Description="Action Section"

ToolTip="Action Page"/>

<MapNode ImageUrl="~\Images\Drama.gif"

Title="Drama"

Description="Drama Section"

ToolTip="Drama Page"/>

<MapNode ImageUrl="~\Images\Musical.gif"

Title="Musical"

Description="Musical Section"

ToolTip="Musical Page"/>

</MapNode>

</MapHomeNode>

설명

경우는 Menu 각 데이터 항목에 여러 필드가 들어 있는 데이터 원본에 바인딩된 컨트롤 (예: 몇 가지 특성을 사용 하 여 XML 요소)를 메뉴 항목 바인딩이 정의 된 경우 메뉴 항목을 표시 하 여 반환 되는 값을 ToString() 메서드의 기본적으로 데이터 항목입니다. XML 요소가 아닌 경우 메뉴 항목이 메뉴의 기본 구조를 보여주지만 그렇지 않은 경우에 그다지 유용 하지는 요소 이름을 표시 합니다. 메뉴 항목 바인딩을 지정 하 여 특정 필드를 메뉴 항목의 속성을 바인딩할 수 있습니다. MenuItemBinding 바인딩되는 메뉴 항목과 각 데이터 항목 간의 관계를 정의 하는 개체입니다.

참고

경우는 Menu 컨트롤이 바인딩되는 SiteMapDataSource 컨트롤, 메뉴 항목 바인딩을 영향을 주지 않습니다. 바인딩은은 사이트 맵 공급자를 사용 하 여 자동으로 수행 됩니다.

Menu 저장소를 제어 합니다. 해당 MenuItemBinding 개체는 DataBindings 속성 메뉴 계층 구조와 데이터 원본 계층 구조 간에 한 일 관계를 만들기 위해 데이터 원본에 바인딩을 적용 합니다. 데이터 소스의 각 데이터 항목에 대 한 합니다 Menu 제어 데이터 항목을 일치 시 키 려는 MenuItemBinding 해당 만들 개체 MenuItem 개체입니다.

만들 때를 MenuItemBinding 개체 바인딩에 대 한 조건을 지정 해야 합니다. 기준은 데이터 항목을 메뉴 항목에 바인딩해야 하는 시기를 나타냅니다. 지정할 수 있습니다 합니다 DepthDataMember, 또는 둘 다.

메뉴 항목 수준에 바인딩되는 메뉴 수준을 지정 합니다. 예를 들어, 다음 MenuItemBinding 선언을 데이터 원본의 이름 및 ID 필드를 바인딩하는 TextValue 속성을 각각 깊이가 0 사용 하 여 모든 노드의:

<asp:MenuItemBinding Depth="0" TextField="Name" ValueField="ID">  

데이터 멤버를 데이터 원본에서 데이터 항목의 형식을 지정 하지만 데이터 원본에 따라 다른 정보를 나타낼 수 있습니다. 계층적 데이터 소스에서 각 데이터 항목 (나타내는 IHierarchyData 개체) 표시를 Type 데이터 항목의 형식을 지정 하는 속성입니다. 예를 들어, XML 요소에 대 한 데이터 멤버 요소의 이름을 지정합니다. 여러 데이터 항목 형식에 포함 되어 있으면 데이터 원본 데이터 멤버는 데이터를 지정 하는 항목 유형을 사용 하도록 합니다. 다음 MenuItemBinding 선언 바인딩합니다 합니다 <Book> 요소의 XmlDataSource 컨트롤 계층의 위치에 관계 없이 메뉴에서 모든 메뉴 항목에:

<asp:MenuItemBinding DataMember="Book" TextField="Title" ValueField= "ISBN">  

경우에 따라 수준과 데이터 멤버를 둘 다 지정 하는 메뉴 항목 바인딩을 만드는 해야 합니다. 이 데이터 원본에서 동일한 데이터 멤버 값을 가진 다른 수준에서 항목을 포함 하는 경우 자주 사용 됩니다. 예를 들어, 있습니다 <Item> XML 파일 내의 다른 수준에 표시 되는 요소입니다. 다음 MenuItemBinding 선언에는 서로 다른 메뉴 수준에서 멤버를 동일한 데이터에 적용 되는 메뉴 항목 바인딩을 지정 하는 방법을 보여 줍니다.

<asp:MenuItemBinding DataMember="Item" Depth="1" TextField="Title">

<asp:MenuItemBinding DataMember="Item" Depth="2" TextField="ISBN">

메뉴 항목 바인딩의 수준과 데이터 멤버 없이 정의 된 경우 메뉴 항목 바인딩의 메뉴 내에서 모든 메뉴 항목에 적용 됩니다. 이 모든 데이터 항목의 동일한 속성 및 메뉴 수준에 관계 없이 동일 하 게 표시 해야 하는 경우에 흔히 사용 됩니다.

바인딩 기준에 설정 된 후의 속성을 다음 바인딩할 수 있습니다는 MenuItem 값에 바인딩할 수 있는 개체입니다. 정적 값 또는 데이터 항목의 필드에 바인딩할 수 있습니다. 정적 값으로 바인딩된 경우 모든 MenuItem 는 개체는 MenuItemBinding 개체가 적용 된 동일한 값을 공유 합니다. 속성 필드에 바인딩된 데이터 소스에서 해당 필드의 값을 포함 합니다.

참고

바인딩된 속성을 선택적으로 재정의할 수는 MenuItem 해당 속성을 직접 설정 하 여 개체입니다.

다음 테이블의 속성을 나열 합니다 MenuItemBinding 클래스의 속성을 바인딩할 수 있도록 하는 MenuItem 데이터 항목의 필드에는 개체.

속성 Description
ImageUrlField 바인딩할 필드를 ImageUrl 의 속성을 MenuItem 개체입니다.
NavigateUrlField 바인딩할 필드를 NavigateUrl 의 속성을 MenuItem 개체입니다.
TextField 바인딩할 필드를 Text 의 속성을 MenuItem 개체입니다.
ToolTipField 바인딩할 필드를 ToolTip 의 속성을 MenuItem 개체입니다.
ValueField 바인딩할 필드를 Value 의 속성을 MenuItem 개체입니다.

다음 테이블의 속성을 나열 합니다 MenuItemBinding 클래스의 속성을 바인딩할 수 있도록 하는 MenuItem 개체를 정적 값입니다.

속성 Description
ImageUrl 바인딩할 정적 값을 ImageUrl 의 속성을 MenuItem 개체입니다.
NavigateUrl 바인딩할 정적 값을 NavigateUrl 의 속성을 MenuItem 개체입니다.
Target 바인딩할 정적 값을 Target 의 속성을 MenuItem 개체입니다.
Text 바인딩할 정적 값을 Text 의 속성을 MenuItem 개체입니다.
ToolTip 바인딩할 정적 값을 ToolTip 의 속성을 MenuItem 개체입니다.
Value 바인딩할 정적 값을 Value 의 속성을 MenuItem 개체입니다.

충돌 하는 경우 MenuItemBinding 개체가 정의 되는 Menu 컨트롤에는 다음 우선 순위에 있는 메뉴 항목 바인딩의 적용 됩니다.

  1. MenuItemBinding 정의 하 고 수준과 데이터 멤버를 둘 다 일치 하는 개체입니다.

  2. MenuItemBinding 정의 하 고 데이터 멤버를 사용할 경우에 일치 하는 개체입니다.

  3. MenuItemBinding 정의 하 고만 일치 하는 개체입니다.

  4. MenuItemBinding 깊이 아니고 데이터 멤버를 정의 하는 개체입니다. (메뉴 항목 바인딩의이 유형은 메뉴에서 모든 메뉴 항목에 적용 됩니다.)

  5. MenuItemBinding 데이터 소스의 일치 하는 항목이 없는 개체입니다. 이 경우, 값을 반환한를 ToString() 메서드의 데이터 항목을 바인딩할를 TextValue 는 메뉴 항목의 속성을 MenuItemBinding 개체가 적용 된.

합니다 MenuItemBinding 클래스에 설정 하 여 메뉴 항목에 표시 되는 텍스트 서식을 지정할 항목을 수는 FormatString 속성입니다.

생성자

MenuItemBinding()

MenuItemBinding 클래스의 새 인스턴스를 초기화합니다.

속성

DataMember

메뉴 항목에 바인딩할 데이터 멤버를 가져오거나 설정합니다.

Depth

MenuItemBinding 개체가 적용되는 메뉴 수준을 가져오거나 설정합니다.

Enabled

MenuItemBinding 개체가 적용된 메뉴 항목이 팝아웃 이미지와 모든 자식 메뉴 항목을 표시할 수 있도록 활성화되는지 여부를 나타내는 값을 가져오거나 설정합니다.

EnabledField

Enabled 개체가 적용된 MenuItem 개체의 MenuItemBinding 속성에 바운딩하기 위해 데이터 소스 필드의 이름을 가져오거나 설정합니다.

FormatString

MenuItemBinding 개체가 적용되는 메뉴 항목 텍스트의 표시 형식을 지정하는 문자열을 가져오거나 설정합니다.

ImageUrl

MenuItemBinding 개체가 적용된 메뉴 항목의 텍스트 옆에 표시되는 이미지의 URL을 가져오거나 설정합니다.

ImageUrlField

ImageUrl 개체가 적용된 MenuItem 개체의 MenuItemBinding 속성에 바운딩하기 위해 데이터 소스 필드의 이름을 가져오거나 설정합니다.

NavigateUrl

MenuItemBinding 개체가 적용된 메뉴 항목을 클릭할 때 링크할 URL을 가져오거나 설정합니다.

NavigateUrlField

NavigateUrl 개체가 적용된 MenuItem 개체의 MenuItemBinding 속성에 바운딩하기 위해 데이터 소스 필드의 이름을 가져오거나 설정합니다.

PopOutImageUrl

MenuItemBinding 개체가 적용된 메뉴 항목에 대해 동적 하위 메뉴가 있음을 나타내는 이미지의 URL을 가져오거나 설정합니다.

PopOutImageUrlField

PopOutImageUrl 개체가 적용된 MenuItem 개체의 MenuItemBinding 속성에 바운딩하기 위해 데이터 소스 필드의 이름을 가져오거나 설정합니다.

Selectable

MenuItemBinding 개체가 적용된 메뉴 항목을 선택할 수 있는지 아니면 "클릭"할 수 있는지를 나타내는 값을 가져오거나 설정합니다.

SelectableField

Selectable 개체가 적용된 MenuItem 개체의 MenuItemBinding 속성에 바운딩하기 위해 데이터 소스 필드의 이름을 가져오거나 설정합니다.

SeparatorImageUrl

MenuItemBinding 개체가 적용된 메뉴 항목에 대해 다른 메뉴 항목과의 구분을 위해 메뉴 항목 텍스트 아래에 표시되는 이미지의 URL을 가져오거나 설정합니다.

SeparatorImageUrlField

SeparatorImageUrl 개체가 적용된 MenuItem 개체의 MenuItemBinding 속성에 바운딩하기 위해 데이터 소스 필드의 이름을 가져오거나 설정합니다.

Target

MenuItemBinding 개체가 적용된 메뉴 항목에 연결된 웹 페이지 내용을 표시할 대상 창이나 프레임을 가져오거나 설정합니다.

TargetField

Target 개체가 적용된 MenuItem 개체의 MenuItemBinding 속성에 바운딩하기 위해 데이터 소스 필드의 이름을 가져오거나 설정합니다.

Text

MenuItemBinding 개체가 적용된 메뉴 항목에 표시될 텍스트를 가져오거나 설정합니다.

TextField

Text 개체가 적용된 MenuItem 개체의 MenuItemBinding 속성에 바운딩하기 위해 데이터 소스 필드의 이름을 가져오거나 설정합니다.

ToolTip

MenuItemBinding 개체가 적용된 메뉴 항목에 대한 도구 설명 텍스트를 가져오거나 설정합니다.

ToolTipField

ToolTip 개체가 적용된 MenuItem 개체의 MenuItemBinding 속성에 바운딩하기 위해 데이터 소스 필드의 이름을 가져오거나 설정합니다.

Value

포스트백 이벤트를 처리하는 데 사용되는 데이터와 같이 MenuItemBinding 개체가 적용된 메뉴 항목에 대한 모든 추가 데이터를 저장하는 데 사용되는 표시되지 않는 값을 가져오거나 설정합니다.

ValueField

Value 개체가 적용된 MenuItem 개체의 MenuItemBinding 속성에 바운딩하기 위해 데이터 소스 필드의 이름을 가져오거나 설정합니다.

메서드

Equals(Object)

지정된 개체가 현재 개체와 같은지 확인합니다.

(다음에서 상속됨 Object)
GetHashCode()

기본 해시 함수로 작동합니다.

(다음에서 상속됨 Object)
GetType()

현재 인스턴스의 Type을 가져옵니다.

(다음에서 상속됨 Object)
MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
ToString()

현재 개체를 나타내는 문자열을 반환합니다.

명시적 인터페이스 구현

ICloneable.Clone()

MenuItemBinding 개체의 복사본을 만듭니다.

IDataSourceViewSchemaAccessor.DataSourceViewSchema

이 멤버에 대한 설명은 DataSourceViewSchema를 참조하세요.

IStateManager.IsTrackingViewState

MenuItemBinding 개체에서 해당 뷰 상태의 변경 내용을 저장하는지 여부를 나타내는 값을 가져옵니다.

IStateManager.LoadViewState(Object)

노드의 이전에 저장된 뷰 상태를 로드합니다.

IStateManager.SaveViewState()

Object의 뷰 상태에 대한 변경 내용을 저장합니다.

IStateManager.TrackViewState()

MenuItemBinding 개체에서 해당 뷰 상태의 변경 내용을 추적하도록 합니다.

적용 대상

추가 정보