SiteMapNodeCollection.Add メソッドとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > SiteMapNodeCollection.Add メソッドの意味・解説 

SiteMapNodeCollection.Add メソッド

メモ : このメソッドは、.NET Framework version 2.0新しく追加されたものです。

単一SiteMapNode オブジェクトコレクション追加します

名前空間: System.Web
アセンブリ: System.Web (system.web.dll 内)
構文構文

Public Overridable Function
 Add ( _
    value As SiteMapNode _
) As Integer
Dim instance As SiteMapNodeCollection
Dim value As SiteMapNode
Dim returnValue As Integer

returnValue = instance.Add(value)
public virtual int Add (
    SiteMapNode value
)
public:
virtual int Add (
    SiteMapNode^ value
)
public int Add (
    SiteMapNode value
)
public function Add (
    value : SiteMapNode
) : int

パラメータ

value

SiteMapNodeCollection に追加する SiteMapNode。

戻り値
SiteMapNode挿入された InnerList のインデックス

例外例外
例外種類条件

ArgumentException

valuenull 参照 (Visual Basic では Nothing) です。

NotSupportedException

SiteMapNodeCollection読み取り専用です。

解説解説

SiteMapNode オブジェクト読み取り専用または固定サイズSiteMapNodeCollection コレクション追加することはできません。IsReadOnly プロパティチェックすることにより、SiteMapNodeCollection読み取り専用であるかどうかテストできます

使用例使用例

このセクションには、2 つコード例含まれています。新しSiteMapNodeCollection コレクション作成して、それに要素追加する方法最初コード例示します要素カスタム サイト マップ プロバイダ追加する方法2 番目のコード例示します

SiteMapNodeCollection コンストラクタ使用して新しSiteMapNodeCollection作成しAdd メソッド使用して要素をそれに追加する方法次のコード例示します

' The LoadSiteMapData() Function loads site navigation
' data from persistent storage into a DataTable.

Dim siteMapData As DataTable
siteMapData = LoadSiteMapData()

' Create a SiteMapNodeCollection.
Dim nodes As New SiteMapNodeCollection()

' Create a SiteMapNode and add it to the collection.
Dim tempNode As SiteMapNode
Dim row As DataRow
Dim index As Integer
index = 0

While (index < siteMapData.Rows.Count)

    row = siteMapData.Rows(index)

    ' Create a node based on the data in the DataRow.
    tempNode = New SiteMapNode(SiteMap.Provider, row("Key").ToString(),
 row("Url").ToString())

    ' Add the node to the collection.
    nodes.Add(tempNode)
    index = index + 1
End While

// The LoadSiteMapData() method loads site navigation
// data from persistent storage into a DataTable.
DataTable siteMap = LoadSiteMapData();

// Create a SiteMapNodeCollection.
SiteMapNodeCollection nodes = new SiteMapNodeCollection();

// Create a SiteMapNode and add it to the collection.
SiteMapNode tempNode;
DataRow row;
int index = 0;

while (index < siteMap.Rows.Count)
{

    row = siteMap.Rows[index];

    // Create a node based on the data in the DataRow.
    tempNode = new SiteMapNode(SiteMap.Provider,
                                row["Key"].ToString(),
                                row["Url"].ToString());

    // Add the node to the collection.
    nodes.Add(tempNode);
    ++index;
}

カスタム サイト マップ プロバイダ実装方法、および SiteMapNodeCollection コンストラクタ使用して新しSiteMapNodeCollection作成しAdd メソッド使用して要素SiteMapNodeCollection追加する方法次のコード例示します

このコード例は、SiteMapProvider クラストピック取り上げている、コード例一部分です。

' Implement the GetChildNodes method.
Public Overrides Function
 GetChildNodes(ByVal node As SiteMapNode)
 As SiteMapNodeCollection
  Dim children As New SiteMapNodeCollection()
  ' Iterate through the ArrayList and find all nodes that have the specified
 node as a parent.
  SyncLock Me
    Dim i As Integer
    For i = 0 To childParentRelationship.Count
 - 1

      Dim de As DictionaryEntry = CType(childParentRelationship(i),
 DictionaryEntry)
      Dim nodeUrl As String
 = CType(de.Key, String)

      Dim parent As SiteMapNode = GetNode(childParentRelationship,
 nodeUrl)

      If Not (parent Is
 Nothing) AndAlso node.Url = parent.Url Then
        ' The SiteMapNode with the Url that corresponds to nodeUrl
        ' is a child of the specified node. Get the SiteMapNode for
        ' the nodeUrl.
        Dim child As SiteMapNode = FindSiteMapNode(nodeUrl)
        If Not (child Is
 Nothing) Then
          children.Add(CType(child, SiteMapNode))
        Else
          Throw New Exception("ArrayLists
 not in sync.")
        End If
      End If
    Next i
  End SyncLock
  Return children
End Function 'GetChildNodes

Protected Overrides Function
 GetRootNodeCore() As SiteMapNode
  Return RootNode
End Function ' GetRootNodeCore()

' Implement the GetParentNode method.
Public Overrides Function
 GetParentNode(ByVal node As SiteMapNode)
 As SiteMapNode
  ' Check the childParentRelationship table and find the parent of the
 current node.
  ' If there is no parent, the current node is the RootNode.
  Dim parent As SiteMapNode = Nothing
  SyncLock Me
    ' Get the Value of the node in childParentRelationship
    parent = GetNode(childParentRelationship, node.Url)
  End SyncLock
  Return parent
End Function 'GetParentNode
// Implement the GetChildNodes method.
public override SiteMapNodeCollection GetChildNodes(SiteMapNode
 node)
{
  SiteMapNodeCollection children = new SiteMapNodeCollection();
  // Iterate through the ArrayList and find all nodes that have the
 specified node as a parent.
  lock (this)
  {
    for (int i = 0; i < childParentRelationship.Count;
 i++)
    {

      string nodeUrl = ((DictionaryEntry)childParentRelationship[i]).Key
 as string;

      SiteMapNode parent = GetNode(childParentRelationship, nodeUrl);

      if (parent != null && node.Url
 == parent.Url)
      {
        // The SiteMapNode with the Url that corresponds to nodeUrl
        // is a child of the specified node. Get the SiteMapNode for
        // the nodeUrl.
        SiteMapNode child = FindSiteMapNode(nodeUrl);
        if (child != null)
        {
          children.Add(child as SiteMapNode);
        }
        else
        {
          throw new Exception("ArrayLists not in
 sync.");
        }
      }
    }
  }
  return children;
}
protected override SiteMapNode GetRootNodeCore()
{
  return RootNode;
}
// Implement the GetParentNode method.
public override SiteMapNode GetParentNode(SiteMapNode node)
{
  // Check the childParentRelationship table and find the parent of
 the current node.
  // If there is no parent, the current node is the RootNode.
  SiteMapNode parent = null;
  lock (this)
  {
    // Get the Value of the node in childParentRelationship
    parent = GetNode(childParentRelationship, node.Url);
  }
  return parent;
}
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
SiteMapNodeCollection クラス
SiteMapNodeCollection メンバ
System.Web 名前空間
AddRange
Insert
Remove
SiteMapProvider



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

SiteMapNodeCollection.Add メソッドのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



SiteMapNodeCollection.Add メソッドのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS