다음을 통해 공유


TreeNode.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 Index_Changed(Object sender, EventArgs e)
  {

    // Set the PathSeparator character based on the user's selection.
    // Notice that the value must be converted to a Char data type.
    BookTreeView.PathSeparator = Convert.ToChar(List.SelectedItem.Text);

    // Display the ValuePath values for the second-level nodes.
    Message.Text = "The ValuePath values for the second-level nodes are:<br />";
    foreach(TreeNode node in BookTreeView.Nodes[0].ChildNodes)
    {

      // Create the delimiter array with the PathSeparator value for the Split method.
      Char[] DelimiterArray = new Char[1];
      DelimiterArray[0] = BookTreeView.PathSeparator;

      // Parse the ValuePath value using the delimiter array.
      String[] NodeValues = node.ValuePath.Split(DelimiterArray);

      // Display the node values.
      for(int i=0; i<NodeValues.Length; i++)
      {
        if(i != NodeValues.Length - 1)
        {   
          // Append the delimiter character.
          Message.Text += NodeValues[i] + BookTreeView.PathSeparator.ToString();
        }
        else
        {
          // Do not append the delimiter character.
          Message.Text += NodeValues[i];
        }

      }

      // Append a line break for the next node.
      Message.Text += "<br />";

    }

  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >

  <head runat="server">
    <title>TreeView PathSeparator Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>TreeView PathSeparator Example</h3>
      
      <asp:TreeView id="BookTreeView"
        ExpandDepth="-1"
        PathSeparator="/"
        runat="server">
         
        <Nodes>
        
          <asp:TreeNode Value="Chapter 1" 
            Text="Chapter 1">
             
            <asp:TreeNode Value="Section 1"
              Text="Section 1">
               
              <asp:TreeNode Value="Paragraph 1" 
                Text="Paragraph 1">
              </asp:TreeNode>
                
            </asp:TreeNode>
            
            <asp:TreeNode Value="Section 2" 
              Text="Section 2">
            </asp:TreeNode>
            
          </asp:TreeNode>
        
        </Nodes>
        
      </asp:TreeView>
      
      <br />
      
      <asp:Label id="Message" runat="server"/>
      
      <hr />
      
      Select a path separator value:<br />
      
      <asp:DropDownList ID="List"
        AutoPostBack="true"
        OnSelectedIndexChanged="Index_Changed"   
        runat="server">
      
        <asp:ListItem Selected="true">/</asp:ListItem>
        <asp:ListItem>\</asp:ListItem>
        <asp:ListItem>|</asp:ListItem>
        <asp:ListItem>,</asp:ListItem>
        <asp:ListItem>;</asp:ListItem>
      
      </asp:DropDownList>

    </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 Index_Changed(ByVal sender As Object, ByVal e As EventArgs)

    ' Set the PathSeparator character based on the user's selection.
    ' Notice that the value must be converted to a Char data type.
    BookTreeView.PathSeparator = Convert.ToChar(List.SelectedItem.Text)

    ' Display the ValuePath values for the second-level nodes.
    Message.Text = "The ValuePath values for the second-level nodes are:<br />"
    Dim node As TreeNode
    For Each node In BookTreeView.Nodes(0).ChildNodes

      ' Create the delimiter array with the PathSeparator value for the Split method.
      Dim DelimiterArray(1) As Char
      DelimiterArray(0) = BookTreeView.PathSeparator

      ' Parse the ValuePath value using the delimiter array.
      Dim NodeValues() As String = node.ValuePath.Split(DelimiterArray)

      ' Display the node values.
      Dim i As Integer

      For i = 0 To NodeValues.Length - 1

        If i <> NodeValues.Length - 1 Then

          ' Append the delimiter character.
          Message.Text &= NodeValues(i) & BookTreeView.PathSeparator.ToString()

        Else

          ' Do not append the delimiter character.
          Message.Text &= NodeValues(i)

        End If

      Next

      ' Append a line break for the next node.
      Message.Text &= "<br />"

    Next

  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >

  <head runat="server">
    <title>TreeView PathSeparator Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>TreeView PathSeparator Example</h3>
      
      <asp:TreeView id="BookTreeView"
        ExpandDepth="-1"
        PathSeparator="/"
        runat="server">
         
        <Nodes>
        
          <asp:TreeNode Value="Chapter 1" 
            Text="Chapter 1">
             
            <asp:TreeNode Value="Section 1"
              Text="Section 1">
               
              <asp:TreeNode Value="Paragraph 1" 
                Text="Paragraph 1">
              </asp:TreeNode>
                
            </asp:TreeNode>
            
            <asp:TreeNode Value="Section 2" 
              Text="Section 2">
            </asp:TreeNode>
            
          </asp:TreeNode>
        
        </Nodes>
        
      </asp:TreeView>
      
      <br />
      
      <asp:Label id="Message" runat="server"/>
      
      <hr />
      
      Select a path separator value:<br />
      
      <asp:DropDownList ID="List"
        AutoPostBack="true"
        OnSelectedIndexChanged="Index_Changed"   
        runat="server">
      
        <asp:ListItem Selected="true">/</asp:ListItem>
        <asp:ListItem>\</asp:ListItem>
        <asp:ListItem>|</asp:ListItem>
        <asp:ListItem>,</asp:ListItem>
        <asp:ListItem>;</asp:ListItem>
      
      </asp:DropDownList>

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

설명

ValuePath 속성 루트 노드에서 현재 노드까지의 경로 구성 하는 노드 값의 구분 기호로 구분 된 목록을 포함 합니다. 사용 된 PathSeparator 노드 값을 구분 하는 데 구분 기호 문자를 지정 하는 속성입니다. 개별 값 또는 인수로 전달할 목록을 구문 분석할 때이 값은 일반적으로 사용 됩니다는 FindNode 메서드는 TreeView 클래스입니다.

에 표시 되는 값에 따라는 TreeView 컨트롤, 구분 기호 문자 충돌을 방지 하기 위해 변경 해야 할 수 있습니다. 예를 들어 쉼표로 구분 기호 문자를 설정 하는 경우 표시 되는 값 없어야 쉼표가; 그렇지 않은 경우 정확 하 게 구문 분석할 수는 ValuePath 속성입니다.

참고

동일한 수준의 노드 각각 있어야에 고유한 값을 합니다 Value 속성, TreeView 컨트롤은 동일한 값이 있는 동일한 수준의 다른 노드 간에 구분할 수 없습니다. 이 시나리오에서는 중복 값을 가진 노드를 클릭할 경우 노드에 표시 되는 첫 번째는 TreeView 컨트롤을 선택 합니다.

적용 대상

추가 정보