TreeNodeCollection Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
public ref class TreeNodeCollection sealed : System::Collections::ICollection, System::Web::UI::IStateManager
public sealed class TreeNodeCollection : System.Collections.ICollection, System.Web.UI.IStateManager
type TreeNodeCollection = class
interface ICollection
interface IEnumerable
interface IStateManager
Public NotInheritable Class TreeNodeCollection
Implements ICollection, IStateManager
- Dědičnost
-
TreeNodeCollection
- Implementuje
Příklady
Následující příklad ukazuje, jak programově přidat uzly do a odebrat z objektu TreeNodeCollection. Všimněte si, že Nodes objekt a ChildNodes vlastnosti vrací TreeNodeCollection .
<%@ 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)
{
if (!IsPostBack)
{
// Use the Add and Remove methods to programmatically
// remove the Appendix C node and replace it with a new
// node.
LinksTreeView.Nodes.Remove(LinksTreeView.Nodes[3]);
LinksTreeView.Nodes.Add(new TreeNode("New Appendix C"));
// Use the AddAt and RemoveAt methods to programmatically
// remove the Chapter One node and replace it with a new node.
LinksTreeView.Nodes[0].ChildNodes.RemoveAt(0);
LinksTreeView.Nodes[0].ChildNodes.AddAt(0, new TreeNode("New Chapter One"));
// Use the Clear method to remove all the child nodes of the
// Chapter Two node.
LinksTreeView.Nodes[0].ChildNodes[1].ChildNodes.Clear();
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>TreeNodeCollection Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>TreeNodeCollection Example</h3>
<asp:TreeView id="LinksTreeView"
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"
Expanded="true">
<asp:TreeNode Text="Chapter One">
<asp:TreeNode Text="Section 1.0">
<asp:TreeNode Text="Topic 1.0.1"/>
<asp:TreeNode Text="Topic 1.0.2"/>
<asp:TreeNode Text="Topic 1.0.3"/>
</asp:TreeNode>
<asp:TreeNode Text="Section 1.1">
<asp:TreeNode Text="Topic 1.1.1"/>
<asp:TreeNode Text="Topic 1.1.2"/>
<asp:TreeNode Text="Topic 1.1.3"/>
<asp:TreeNode Text="Topic 1.1.4"/>
</asp:TreeNode>
</asp:TreeNode>
<asp:TreeNode Text="Chapter Two">
<asp:TreeNode Text="Section 2.0">
<asp:TreeNode Text="Topic 2.0.1"/>
<asp:TreeNode Text="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>
</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)
If Not IsPostBack Then
' Use the Add and Remove methods to programmatically
' remove the Appendix C node and replace it with a new
' node.
LinksTreeView.Nodes.Remove(LinksTreeView.Nodes(3))
LinksTreeView.Nodes.Add(New TreeNode("New Appendix C"))
' Use the AddAt and RemoveAt methods to programmatically
' remove the Chapter One node and replace it with a new node.
LinksTreeView.Nodes(0).ChildNodes.RemoveAt(0)
LinksTreeView.Nodes(0).ChildNodes.AddAt(0, New TreeNode("New Chapter One"))
' Use the Clear method to remove all the child nodes of the
' Chapter Two node.
LinksTreeView.Nodes(0).ChildNodes(1).ChildNodes.Clear()
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>TreeNodeCollection Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>TreeNodeCollection Example</h3>
<asp:TreeView id="LinksTreeView"
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"
Expanded="true">
<asp:TreeNode Text="Chapter One">
<asp:TreeNode Text="Section 1.0">
<asp:TreeNode Text="Topic 1.0.1"/>
<asp:TreeNode Text="Topic 1.0.2"/>
<asp:TreeNode Text="Topic 1.0.3"/>
</asp:TreeNode>
<asp:TreeNode Text="Section 1.1">
<asp:TreeNode Text="Topic 1.1.1"/>
<asp:TreeNode Text="Topic 1.1.2"/>
<asp:TreeNode Text="Topic 1.1.3"/>
<asp:TreeNode Text="Topic 1.1.4"/>
</asp:TreeNode>
</asp:TreeNode>
<asp:TreeNode Text="Chapter Two">
<asp:TreeNode Text="Section 2.0">
<asp:TreeNode Text="Topic 2.0.1"/>
<asp:TreeNode Text="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>
</form>
</body>
</html>
Poznámky
Třída TreeNodeCollection slouží k ukládání a správě kolekce TreeNode objektů v ovládacím TreeView prvku. Ovládací TreeView prvek používá TreeNodeCollection třídu ve dvou svých vlastnostech. Ukládá své kořenové uzly ve Nodes vlastnosti a jeho vybrané uzly ve CheckedNodes vlastnosti. Kolekce TreeNodeCollection se také používá pro ChildNodes vlastnost k ukládání podřízených uzlů (pokud existuje).
Třída TreeNodeCollection podporuje několik způsobů přístupu k položkám v kolekci:
Pomocí indexeru Item[]TreeNode můžete načíst objekt přímo v určitém indexu založeném na nule.
Použijte metodu GetEnumerator k vytvoření enumerátoru, který lze použít k iteraci v kolekci.
K iteraci kolekce použijte
foreach(C#) neboFor Each(Visual Basic).CopyTo Pomocí metody zkopírujte obsah kolekce do objektuArray.
Objekty můžete spravovat TreeNodeCollection prostřednictvím kódu programu.TreeNode Pokud chcete do kolekce přidat uzly, použijte metodu nebo AddAt metoduAdd. Pokud chcete odebrat uzly z kolekce, použijte metodu Remove, RemoveAtnebo Clear .
Poznámka:
TreeView Když je ovládací prvek vázán na zdroj dat, Nodes a ChildNodes kolekce se automaticky vyplní při každém vytvoření vazby. Všechny změny kolekcí mezi vazbami budou ztraceny. Pokud chcete tyto změny zachovat, aktualizujte zdroj dat nebo ručně znovu sestavte kolekci pokaždé, když svážete vazbu.
Obsahuje TreeNodeCollection vlastnosti a metody, které umožňují načíst informace o samotné kolekci. Pokud chcete zjistit, kolik položek je v kolekci, použijte Count tuto vlastnost. Pokud chcete zjistit, zda kolekce obsahuje určitý TreeNode objekt, použijte metodu Contains . K získání indexu TreeNode objektu v kolekci použijte metodu IndexOf .
Konstruktory
| Name | Description |
|---|---|
| TreeNodeCollection() |
Inicializuje novou instanci TreeNodeCollection třídy pomocí výchozích hodnot. |
| TreeNodeCollection(TreeNode) |
Inicializuje novou instanci TreeNodeCollection třídy pomocí zadaného nadřazeného uzlu (nebo vlastníka). |
Vlastnosti
| Name | Description |
|---|---|
| Count |
Získá počet položek v objektu TreeNodeCollection . |
| IsSynchronized |
Získá hodnotu označující, zda je přístup k TreeNodeCollection této synchronizaci (bezpečné vlákno). |
| Item[Int32] |
TreeNode Získá objekt v zadaném indexu v objektuTreeNodeCollection. |
| SyncRoot |
Získá objekt, který lze použít k synchronizaci přístupu k objektu TreeNodeCollection . |
Metody
| Name | Description |
|---|---|
| Add(TreeNode) |
Připojí zadaný TreeNode objekt na konec objektu TreeNodeCollection . |
| AddAt(Int32, TreeNode) |
Vloží zadaný TreeNode objekt do objektu TreeNodeCollection v zadaném umístění indexu. |
| Clear() |
Vyprázdní TreeNodeCollection objekt. |
| Contains(TreeNode) |
Určuje, zda je zadaný TreeNode objekt v kolekci. |
| CopyTo(TreeNode[], Int32) |
Zkopíruje všechny položky z objektu TreeNodeCollection do kompatibilního jednorozměrného pole TreeNode objektů počínaje zadaným indexem v cílovém poli. |
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
| GetEnumerator() |
Vrátí enumerátor, který lze použít k iteraci objektu TreeNodeCollection . |
| GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| IndexOf(TreeNode) |
Určuje index zadaného TreeNode objektu. |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| Remove(TreeNode) |
Odebere zadaný TreeNode objekt z objektu TreeNodeCollection . |
| RemoveAt(Int32) |
Odebere TreeNode objekt v zadaném umístění indexu z objektu TreeNodeCollection . |
| ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
Explicitní implementace rozhraní
| Name | Description |
|---|---|
| ICollection.CopyTo(Array, Int32) |
Zkopíruje všechny položky z objektu TreeNodeCollection do kompatibilního jednorozměrného Arrayobjektu počínaje zadaným indexem v cílovém poli. |
| IStateManager.IsTrackingViewState |
Získá hodnotu určující, zda TreeNodeCollection objekt ukládá změny do jeho stavu zobrazení. |
| IStateManager.LoadViewState(Object) |
TreeNodeCollection Načte dříve uložený stav zobrazení objektu. |
| IStateManager.SaveViewState() |
Uloží změny pro zobrazení stavu do .Object |
| IStateManager.TrackViewState() |
TreeNodeCollection Dává pokyn ke sledování změn v jeho stavu zobrazení. |
Metody rozšíření
| Name | Description |
|---|---|
| AsParallel(IEnumerable) |
Umožňuje paralelizaci dotazu. |
| AsQueryable(IEnumerable) |
Převede IEnumerable na IQueryable. |
| Cast<TResult>(IEnumerable) |
Přetypuje prvky IEnumerable na zadaný typ. |
| OfType<TResult>(IEnumerable) |
Filtruje prvky IEnumerable na základě zadaného typu. |