共用方式為


MenuItem.ValuePath 屬性

定義

取得從根功能表項目通往目前功能表項目的路徑。

public:
 property System::String ^ ValuePath { System::String ^ get(); };
[System.ComponentModel.Browsable(false)]
public string ValuePath { get; }
[<System.ComponentModel.Browsable(false)>]
member this.ValuePath : string
Public ReadOnly Property ValuePath As String

屬性值

String

將功能表項目值以分隔符號隔開的清單,構成從根功能表項目通往目前功能表項目的路徑。

屬性

範例

下列範例示範如何將值剖析為 ValuePath 個別功能表項目值的 屬性。


<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  void Page_Load(Object sender, EventArgs e)
  {
    // Get the Classical menu item using the Items
    // and ChildItems collections.
    MenuItem item = NavigationMenu.Items[0].ChildItems[0].ChildItems[0];

    // Create the delimiter array using the PathSeparator value.
    // This array is used by the Split method to parse the
    // value path string. 
    Char[] DelimiterArray = new Char[1];
    DelimiterArray[0] = NavigationMenu.PathSeparator;
    
    // Parse the value path of the Classical menu item 
    // using the Split method.
    String[] nodeValues = item.ValuePath.Split(DelimiterArray);
    
    // Display the original and parsed values.
    Message.Text = "The original value path for the Classical menu item is <b>" + 
      item.ValuePath + "</b>.<br/>";
    Message.Text += "The individual values that make up the value " +
      "path are: <br/>";

    foreach (String menuValue in nodeValues)
    {
      Message.Text += "- <b>" + menuValue + "</b><br/>";
    } 
  }
    
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>MenuItem ValuePath Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>MenuItem ValuePath Example</h3>
    
      <asp:menu id="NavigationMenu"
        staticdisplaylevels="1"
        staticsubmenuindent="10" 
        orientation="Vertical" 
        runat="server">

        <items>
          <asp:menuitem text="Home"
            tooltip="Home">
            <asp:menuitem text="Music"
              tooltip="Music">
              <asp:menuitem text="Classical"
                tooltip="Classical"/>
              <asp:menuitem text="Rock"
                tooltip="Rock"/>
              <asp:menuitem text="Jazz"
                tooltip="Jazz"/>
            </asp:menuitem>
            <asp:menuitem text="Movies"
              tooltip="Movies">
              <asp:menuitem text="Action"
                tooltip="Action"/>
              <asp:menuitem text="Drama"
                tooltip="Drama"/>
              <asp:menuitem text="Musical"
                tooltip="Musical"/>
            </asp:menuitem>
          </asp:menuitem>
        </items>
      
      </asp:menu>
      
      <hr/>
      
      <asp:label id="Message" 
        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">
<script runat="server">

  Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)

    ' Get the Classical menu item using the Items
    ' and ChildItems collections.
    Dim item As MenuItem = NavigationMenu.Items(0).ChildItems(0).ChildItems(0)

    ' Create the delimiter array using the PathSeparator value.
    ' This array is used by the Split method to parse the
    ' value path string. 
    Dim DelimiterArray(1) As Char
    DelimiterArray(0) = NavigationMenu.PathSeparator
    
    ' Parse the value path of the Classical menu item 
    ' using the Split method.
    Dim nodeValues() As String = item.ValuePath.Split(DelimiterArray)
    
    ' Display the original and parsed values.
    Message.Text = "The original value path for the Classical menu item is <b>" & _
      item.ValuePath & "</b>.<br/>"
    Message.Text &= "The individual values that make up the value " & _
      "path are: <br/>"

    Dim menuValue As String
    For Each menuValue In nodeValues
    
      Message.Text &= "- <b>" & menuValue & "</b><br/>"
    
    Next
    
  End Sub
    
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>MenuItem ValuePath Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>MenuItem ValuePath Example</h3>
    
      <asp:menu id="NavigationMenu"
        staticdisplaylevels="1"
        staticsubmenuindent="10" 
        orientation="Vertical" 
        runat="server">

        <items>
          <asp:menuitem text="Home"
            tooltip="Home">
            <asp:menuitem text="Music"
              tooltip="Music">
              <asp:menuitem text="Classical"
                tooltip="Classical"/>
              <asp:menuitem text="Rock"
                tooltip="Rock"/>
              <asp:menuitem text="Jazz"
                tooltip="Jazz"/>
            </asp:menuitem>
            <asp:menuitem text="Movies"
              tooltip="Movies">
              <asp:menuitem text="Action"
                tooltip="Action"/>
              <asp:menuitem text="Drama"
                tooltip="Drama"/>
              <asp:menuitem text="Musical"
                tooltip="Musical"/>
            </asp:menuitem>
          </asp:menuitem>
        </items>
      
      </asp:menu>
      
      <hr/>
      
      <asp:label id="Message" 
        runat="server"/>

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

備註

屬性 ValuePath 包含分隔符號分隔的功能表項目值清單,這些值會形成從根功能表項目到目前功能表項目的路徑。 值路徑是用來指出控制項中 Menu 功能表項目的位置。 您可以使用 屬性來指定用來分隔功能表項目值的 PathSeparator 分隔符號。 剖析個別值的清單,或當做引數傳遞至 FindItem 類別的 TreeView 方法時,通常會使用這個值。 視控制項中顯示的 Menu 值而定,分隔符號可能需要變更,以避免發生任何衝突。 例如,如果您將分隔符號設定為逗號,則顯示的值不應包含任何逗號;否則,您無法正確剖析 ValuePath 屬性。

注意

Value從根功能表項目到目前功能表項目之每個功能表項目的 屬性值會用來產生值路徑。 相同功能表層級的功能表項目必須各有屬性的唯一值 Value ; Menu 控制項無法區分相同層級具有相同值的不同功能表項目。

適用於

另請參閱