This article was translated by machine. To view in the article in English, select the English check box. You can also display the English text in a popup window by moving the mouse pointer over the text.
الترجمة
الأصلي
This documentation is archived and is not being maintained.

SiteMapProvider.GetParentNode أسلوب

Visual Studio 2010

عند تجاوز في فئة مشتقة، يسترد عقدة أصل ل معين SiteMapNodeكائن.

مساحة الاسم:  System.Web
التجميع:  System.Web (في System.Web.dll)

public abstract SiteMapNode GetParentNode(
	SiteMapNode node
)

المعلمات

node
النوع: System.Web.SiteMapNode
SiteMapNode التي تريد استرداد عقدة أصل.

القيمة المُرجعة

النوع: System.Web.SiteMapNode
على SiteMapNodeالذي يمثل الأصل node؛ وإلا، null، إذا كان SiteMapNodeلا يوجد أصل أو ممكّن اقتطاع للأمان والعقدة الأصل غير قابل للوصول إلى مستخدم الحالي.
ملاحظةملاحظة

GetParentNode أيضا قد يعيدnullإذا كانت عقدة أصل ينتمي إلى موفر آخر. في هذه الحالة، استخدم ParentNodeخاصية nodeبدلاً من ذلك.

يوضح المثال تعليمات برمجية التالي كيفية تطبيق GetParentNodeأسلوب في فئة الذي يطبق الملخص SiteMapProviderclass. SimpleTextSiteMapProviderيخزن العلاقة اصل/فرع التسلسل الهرمي بين SiteMapNodeالكائنات في IListالواجهة، مثل ArrayListالكائن.

هذا مثال للتعليمة البرمجية هي جزء من مثال أكبر متوفر لفئة SiteMapProvider.


// 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;
}


نظام التشغيل Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, الإصدار x64 من نظام التشغيل Windows XP Professional, Windows XP Starter Edition, Windows Server 2008, نظام التشغيل Windows Server 2003, نظام التشغيل Windows Server 2000 المزود بحزمة الخدمة SP4, نظام التشغيل Windows Millennium Edition, نظام التشغيل Windows 98

لا يدعم .NET Framework و .NET Compact Framework كافة الإصدارات الخاصة بكل نظام أساسي. للحصول على قائمة بالإصدارات المدعمة، راجع متطلبات النظام إطار عمل .NET.

.NET Framework

مدعوم في: 4, 3.5, 3.0, 2.0
إظهار: