TreeNode.ValuePath Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Pobiera ścieżkę z węzła głównego do bieżącego węzła.
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
Wartość właściwości
Rozdzielona ogranicznikami lista wartości węzłów, które tworzą ścieżkę z węzła głównego do bieżącego węzła.
- Atrybuty
Przykłady
Poniższy przykład kodu przedstawia sposób analizowania ValuePath właściwości.
<%@ 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>
Uwagi
Właściwość ValuePath zawiera rozdzielaną ogranicznikami listę wartości węzłów, które tworzą ścieżkę z węzła głównego do bieżącego węzła. PathSeparator Użyj właściwości , aby określić znak ogranicznika używany do oddzielania wartości węzła. Ta wartość jest często używana podczas analizowania listy dla poszczególnych wartości lub przekazywania jako argumentu do FindNode metody TreeView klasy.
W zależności od wartości wyświetlanej w kontrolce TreeView może być konieczne zmianę znaku ogranicznika, aby zapobiec konfliktom. Jeśli na przykład ustawisz znak ogranicznika na przecinek, wyświetlana wartość nie powinna zawierać żadnych przecinków; w przeciwnym razie nie można dokładnie przeanalizować ValuePath właściwości.
Uwaga
Węzły na tym samym poziomie muszą mieć unikatową wartość dla Value właściwości; kontrolka TreeView nie może odróżnić różnych węzłów na tym samym poziomie, które mają tę samą wartość. W tym scenariuszu, jeśli użytkownik kliknie węzeł, który ma zduplikowaną wartość, zostanie wybrany węzeł, który zostanie wyświetlony jako pierwszy w kontrolce TreeView .