TreeView.FindNode(String) メソッド

定義

指定された値パスにある TreeNode コントロール内の TreeView オブジェクトを取得します。

public:
 System::Web::UI::WebControls::TreeNode ^ FindNode(System::String ^ valuePath);
public System.Web.UI.WebControls.TreeNode FindNode (string valuePath);
member this.FindNode : string -> System.Web.UI.WebControls.TreeNode
Public Function FindNode (valuePath As String) As TreeNode

パラメーター

valuePath
String

ノードの値パス。

戻り値

指定した値パスにある TreeNode

次のコード例では、 メソッドを使用 FindNode してコントロールからノードを取得する方法を TreeView 示します。

重要

この例には、ユーザー入力を受け付けるテキスト ボックスがあります。これにより、セキュリティが脆弱になる可能性があります。 既定では、ASP.NET Web ページによって、ユーザー入力にスクリプトまたは HTML 要素が含まれていないかどうかが検証されます。 詳細については、「スクリプトによる攻略の概要」を参照してください。


<%@ 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 Button_Click(Object sender, EventArgs e)
  {

    // Find the node specified by the user.
    TreeNode node = LinksTreeView.FindNode(Server.HtmlEncode(ValuePathText.Text));

    if (node != null)
    {
      // Indicate that the node was found.
      Message.Text = "The specified node (" + node.ValuePath + ") was found.";
    }
    else
    {
      // Indicate that the node is not in the TreeView control.
      Message.Text = "The specified node (" + ValuePathText.Text + ") is not in this TreeView control.";
    }

  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml">
  <head runat="server">
    <title>TreeView FindNode Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>TreeView FindNode Example</h3>
    
      <asp:TreeView id="LinksTreeView"
        PathSeparator="/"
        Font-Names= "Arial"
        ForeColor="Blue" 
        runat="server">
         
        <LevelStyles>
        
          <asp:TreeNodeStyle ChildNodesPadding="10" 
            Font-Bold="true" 
            Font-Size="12pt" 
            ForeColor="DarkGreen"/>
          <asp:TreeNodeStyle ChildNodesPadding="5" 
            Font-Bold="true" 
            Font-Size="10pt"/>
          <asp:TreeNodeStyle ChildNodesPadding="5" 
            Font-UnderLine="true" 
            Font-Size="10pt"/>
          <asp:TreeNodeStyle ChildNodesPadding="10" 
            Font-Size="8pt"/>
             
        </LevelStyles>
         
        <Nodes>
        
          <asp:TreeNode Text="Table of Contents"
            SelectAction="None">
             
            <asp:TreeNode Text="Chapter One" Value="Chapter One">
            
              <asp:TreeNode Text="Section 1.0" Value="Section 1.0">
              
                <asp:TreeNode Text="Topic 1.0.1" Value="Topic 1.0.1"/>
                <asp:TreeNode Text="Topic 1.0.2" Value="Topic 1.0.2"/>
                <asp:TreeNode Text="Topic 1.0.3" Value="Topic 1.0.3"/>
              
              </asp:TreeNode>
              
              <asp:TreeNode Text="Section 1.1">
              
                <asp:TreeNode Text="Topic 1.1.1" Value="Topic 1.1.1"/>
                <asp:TreeNode Text="Topic 1.1.2" Value="Topic 1.1.2"/>
                <asp:TreeNode Text="Topic 1.1.3" Value="Topic 1.1.3"/>
                <asp:TreeNode Text="Topic 1.1.4" Value="Topic 1.1.4"/>
              
              </asp:TreeNode>
            
            </asp:TreeNode>
            
            <asp:TreeNode Text="Chapter Two" Value="Chapter Two">
            
              <asp:TreeNode Text="Section 2.0" Value="Section 2.0">
              
                <asp:TreeNode Text="Topic 2.0.1" Value="Topic 2.0.1"/>
                <asp:TreeNode Text="Topic 2.0.2" Value="Topic 2.0.2"/>
              
              </asp:TreeNode>
            
            </asp:TreeNode>
            
          </asp:TreeNode>
          <asp:TreeNode Text="Appendix A" />
          <asp:TreeNode Text="Appendix B" />
          <asp:TreeNode Text="Appendix C" />
        
        </Nodes>
        
      </asp:TreeView>
      
      <hr/>
      
      <br/><br/>
      
      Enter the value path of the node to locate. <br/>
      Use a forward slash (/) to delimit each node value.<br/>
      <asp:TextBox id="ValuePathText" 
        Text="Table of Contents/Chapter One/Section 1.0"
        Width="50%" 
        runat="server"/>
         
      <br/><br/>
      
      <asp:Button id="Submit"
        Text="Find Node"
        OnClick="Button_Click"  
        runat="server"/>
      
      <br/><br/>
      
      <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 Button_Click(ByVal sender As Object, ByVal e As EventArgs)

    ' Find the node specified by the user.
    Dim node As TreeNode = LinksTreeView.FindNode(Server.HtmlEncode(ValuePathText.Text))

    If Not node Is Nothing Then
   
      ' Indicate that the node was found.
      Message.Text = "The specified node (" & node.ValuePath & ") was found."

    Else

      ' Indicate that the node is not in the TreeView control.
      Message.Text = "The specified node (" & ValuePathText.Text & ") is not in this TreeView control."

    End If

  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml">
  <head runat="server">
    <title>TreeView FindNode Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>TreeView FindNode Example</h3>
    
      <asp:TreeView id="LinksTreeView"
        PathSeparator="/"
        Font-Names= "Arial"
        ForeColor="Blue" 
        runat="server">
         
        <LevelStyles>
        
          <asp:TreeNodeStyle ChildNodesPadding="10" 
            Font-Bold="true" 
            Font-Size="12pt" 
            ForeColor="DarkGreen"/>
          <asp:TreeNodeStyle ChildNodesPadding="5" 
            Font-Bold="true" 
            Font-Size="10pt"/>
          <asp:TreeNodeStyle ChildNodesPadding="5" 
            Font-UnderLine="true" 
            Font-Size="10pt"/>
          <asp:TreeNodeStyle ChildNodesPadding="10" 
            Font-Size="8pt"/>
             
        </LevelStyles>
         
        <Nodes>
        
          <asp:TreeNode Text="Table of Contents"
            SelectAction="None">
             
            <asp:TreeNode Text="Chapter One" Value="Chapter One">
            
              <asp:TreeNode Text="Section 1.0" Value="Section 1.0">
              
                <asp:TreeNode Text="Topic 1.0.1" Value="Topic 1.0.1"/>
                <asp:TreeNode Text="Topic 1.0.2" Value="Topic 1.0.2"/>
                <asp:TreeNode Text="Topic 1.0.3" Value="Topic 1.0.3"/>
              
              </asp:TreeNode>
              
              <asp:TreeNode Text="Section 1.1">
              
                <asp:TreeNode Text="Topic 1.1.1" Value="Topic 1.1.1"/>
                <asp:TreeNode Text="Topic 1.1.2" Value="Topic 1.1.2"/>
                <asp:TreeNode Text="Topic 1.1.3" Value="Topic 1.1.3"/>
                <asp:TreeNode Text="Topic 1.1.4" Value="Topic 1.1.4"/>
              
              </asp:TreeNode>
            
            </asp:TreeNode>
            
            <asp:TreeNode Text="Chapter Two" Value="Chapter Two">
            
              <asp:TreeNode Text="Section 2.0" Value="Section 2.0">
              
                <asp:TreeNode Text="Topic 2.0.1" Value="Topic 2.0.1"/>
                <asp:TreeNode Text="Topic 2.0.2" Value="Topic 2.0.2"/>
              
              </asp:TreeNode>
            
            </asp:TreeNode>
            
          </asp:TreeNode>
          <asp:TreeNode Text="Appendix A" />
          <asp:TreeNode Text="Appendix B" />
          <asp:TreeNode Text="Appendix C" />
        
        </Nodes>
        
      </asp:TreeView>
      
      <hr/>
      
      <br/><br/>
      
      Enter the value path of the node to locate. <br/>
      Use a forward slash (/) to delimit each node value.<br/>
      <asp:TextBox id="ValuePathText" 
        Text="Table of Contents/Chapter One/Section 1.0"
        Width="50%" 
        runat="server"/>
         
      <br/><br/>
      
      <asp:Button id="Submit"
        Text="Find Node"
        OnClick="Button_Click"  
        runat="server"/>
      
      <br/><br/>
      
      <asp:Label id="Message" runat="server"/>

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

注釈

メソッドを FindNode 使用して、指定した値パスにある TreeView コントロールからノードを取得します。 値パスには、ルート ノードから現在のノードへのパスを形成するノード値の区切り記号で区切られたリストが含まれています。 各ノードは、その値パスを プロパティに ValuePath 格納します。 プロパティは PathSeparator 、ノード値を区切るために使用される区切り文字を指定します。

適用対象

こちらもご覧ください