다음을 통해 공유


MenuItemBinding.DataMember 속성

정의

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

public:
 property System::String ^ DataMember { System::String ^ get(); void set(System::String ^ value); };
public string DataMember { get; set; }
member this.DataMember : string with get, set
Public Property DataMember As String

속성 값

String

메뉴 항목에 바인딩할 데이터 멤버입니다. 기본값은 빈 문자열("")로, 이 속성이 설정되어 있지 않음을 나타냅니다.

예제

다음 코드 예제를 사용 하는 방법에 설명 합니다 DataMember 의 메뉴 항목에 바인딩하는 XML 요소를 지정 하는 속성을 Menu 컨트롤입니다. 제대로 작동 하려면이 예제에서는 MenuDataMember.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 DataMember Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <h3>MenuItemBinding DataMember Example</h3>

      <asp:menu id="NavigationMenu"
        datasourceid="MenuSource"
        runat="server">
        
        <databindings>
        
          <asp:menuitembinding datamember="MapNodeHome"
            textfield="Title"
            valuefield="Description"
            imageurlfield="ImageUrl"
            tooltipfield="ToolTip"
            target="_self" />
          <asp:menuitembinding datamember="MapNodeCategory"
            textfield="Title"
            valuefield="Description"
            imageurlfield="ImageUrl"
            tooltipfield="ToolTip"
            target="_blank"/>
          <asp:menuitembinding datamember="MapNodeSection"
            textfield="Title"
            valuefield="Description"
            imageurlfield="ImageUrl"
            tooltipfield="ToolTip"
            target="_blank"/>
          
        </databindings>
        
      </asp:menu>

      <asp:xmldatasource id="MenuSource"
        datafile="MenuDataMember.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 DataMember Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <h3>MenuItemBinding DataMember Example</h3>

      <asp:menu id="NavigationMenu"
        datasourceid="MenuSource"
        runat="server">
        
        <databindings>
        
          <asp:menuitembinding datamember="MapNodeHome"
            textfield="Title"
            valuefield="Description"
            imageurlfield="ImageUrl"
            tooltipfield="ToolTip"
            target="_self" />
          <asp:menuitembinding datamember="MapNodeCategory"
            textfield="Title"
            valuefield="Description"
            imageurlfield="ImageUrl"
            tooltipfield="ToolTip"
            target="_blank"/>
          <asp:menuitembinding datamember="MapNodeSection"
            textfield="Title"
            valuefield="Description"
            imageurlfield="ImageUrl"
            tooltipfield="ToolTip"
            target="_blank"/>
          
        </databindings>
        
      </asp:menu>

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

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

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

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

Title="Home"

Description="Root Page"

ToolTip="Home Page">

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

Title="Music"

Description="Music Category"

ToolTip="Music Page">

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

Title="Classical"

Description="Classical Section"

ToolTip="Classical Page"/>

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

Title="Rock"

Description="Rock Section"

ToolTip="Rock Page"/>

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

Title="Jazz"

Description="Jazz Section"

ToolTip="Jazz Page"/>

</MapNodeCategory>

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

Title="Movies"

Description="Movies Category"

ToolTip="Movies Page">

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

Title="Action"

Description="Action Section"

ToolTip="Action Page"/>

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

Title="Drama"

Description="Drama Section"

ToolTip="Drama Page"/>

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

Title="Musical"

Description="Musical Section"

ToolTip="Musical Page"/>

</MapNodeCategory>

</MapNodeHome>

설명

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

사용 하 여 데이터 원본에 포함 되어 있으면 여러 요소 또는 테이블을 DataMember 속성을 통해 요소 또는 메뉴 항목을 바인딩할 테이블을 지정 합니다. 데이터 멤버를 데이터 원본에서 데이터 항목의 형식을 지정 하지만 데이터 원본에 따라 다른 정보를 나타낼 수 있습니다. 계층적 데이터 소스에서 각 데이터 항목 (나타내는 System.Web.UI.IHierarchyData 개체) 표시를 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 개체가 적용 된 동일한 값을 공유 합니다. 속성 필드에 바인딩된 데이터 원본의 필드의 값을 포함 합니다.

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

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

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

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

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

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

적용 대상

추가 정보