TreeNode.Expanded 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 lub ustawia wartość wskazującą, czy węzeł jest rozszerzony.
public:
property Nullable<bool> Expanded { Nullable<bool> get(); void set(Nullable<bool> value); };
public bool? Expanded { get; set; }
member this.Expanded : Nullable<bool> with get, set
Public Property Expanded As Nullable(Of Boolean)
Wartość właściwości
true
jeśli węzeł zostanie rozszerzony, false
jeśli węzeł nie zostanie rozwinięty lub null
.
Przykłady
W poniższym przykładzie kodu pokazano, jak za pomocą Expanded właściwości programowo rozwinąć węzeł. Inicjuje wszystkie węzły o głębokości jednego do rozszerzonego stanu. Zwróć uwagę, że po rozwinięciu węzła głównego jego węzły podrzędne są już rozwinięte. Aby ten przykład działał poprawnie, należy skopiować przykładowe dane XML poniżej do pliku o nazwie Book.xml.
<%@ 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 Data_Bound(Object sender, TreeNodeEventArgs e)
{
// Determine the depth of a node as it is bound to data.
// If the depth is 1, expand the node.
if(e.Node.Depth == 1)
{
e.Node.Expanded = true;
}
else
{
e.Node.Expanded = false;
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>TreeNode Expanded Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>TreeNode Expanded Example</h3>
<asp:TreeView id="BookTreeView"
DataSourceID="BookXmlDataSource"
OnTreeNodeDataBound="Data_Bound"
runat="server">
<DataBindings>
<asp:TreeNodeBinding DataMember="Book" TextField="Title"/>
<asp:TreeNodeBinding DataMember="Chapter" TextField="Heading"/>
<asp:TreeNodeBinding DataMember="Section" TextField="Heading"/>
</DataBindings>
</asp:TreeView>
<asp:XmlDataSource id="BookXmlDataSource"
DataFile="Book.xml"
runat="server">
</asp:XmlDataSource>
</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 Data_Bound(ByVal sender As Object, ByVal e As TreeNodeEventArgs)
' Determine the depth of a node as it is bound to data.
' If the depth is 1, expand the node.
If e.Node.Depth = 1 Then
e.Node.Expanded = True
Else
e.Node.Expanded = False
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>TreeNode Expanded Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>TreeNode Expanded Example</h3>
<asp:TreeView id="BookTreeView"
DataSourceID="BookXmlDataSource"
OnTreeNodeDataBound="Data_Bound"
runat="server">
<DataBindings>
<asp:TreeNodeBinding DataMember="Book" TextField="Title"/>
<asp:TreeNodeBinding DataMember="Chapter" TextField="Heading"/>
<asp:TreeNodeBinding DataMember="Section" TextField="Heading"/>
</DataBindings>
</asp:TreeView>
<asp:XmlDataSource id="BookXmlDataSource"
DataFile="Book.xml"
runat="server">
</asp:XmlDataSource>
</form>
</body>
</html>
Poniższy kod to przykładowe dane XML dla poprzedniego przykładu.
<Book Title="Book Title">
<Chapter Heading="Chapter 1">
<Section Heading="Section 1">
</Section>
<Section Heading="Section 2">
</Section>
</Chapter>
<Chapter Heading="Chapter 2">
<Section Heading="Section 1">
</Section>
</Chapter>
</Book>
Uwagi
Expanded Użyj właściwości , aby określić lub określić, czy węzeł jest rozszerzony.
Węzeł można rozwinąć i zwinąć, wywołując Expand odpowiednio metody i Collapse . Można również rozwinąć i zwinąć węzeł oraz wszystkie jego węzły podrzędne, wywołując ExpandAll odpowiednio metody i CollapseAll .
Expanded Ponieważ właściwość jest właściwością trójstanową, następujący fragment kodu języka C# powoduje błąd kompilacji:
protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e)
{
if (TreeView1.Nodes[0].Expanded)
{
// some work here
}
}
Chociaż VB.Net niejawnie rzutuje Boolean
wartość na NullableBoolean
wartość , język C# nie. Dlatego najlepszym rozwiązaniem jest jawne sprawdzenie stanu właściwości. Na przykład następujące przykłady kodu w visual basic i C# jawnie przetestuj Expanded wartość właściwości.
Poniższy przykład kodu języka Visual Basic jawnie sprawdza wartość Expanded właściwości. Ten przykład sprawdza, czy Expanded właściwość jest ustawiona na ; w związku z tym Nothing
i False
należy wykonać True
instrukcję If
.
If TreeView1.Nodes(0).Expanded = True Then 'some work hereEnd IF
Ten przykład kodu w języku C# jawnie sprawdza wartość Expanded właściwości. Ten przykład sprawdza, czy Expanded właściwość jest ustawiona na ; w związku z tym Null
i False
należy wykonać True
instrukcję If
.
if( TreeView1.Nodes[0].Expanded == true ) { //some work here}