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.

SiteMapResolveEventArgs الفئة

Visual Studio 2010

يوفر بيانات لحدث هو raهوed بواسطة استدعاء CurrentNodeخاصية SiteMapProviderفئة.

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

public class SiteMapResolveEventArgs : EventArgs

SiteMapResolveEventArgs فئة هو المستخدمة في ResolveSiteMapNodeالأسلوب لتمكين المشتركين SiteMapResolveحدث لإرجاع مثيل SiteMapNodeclass. بواسطة إضافة مفوض معالج حدث إلى معالجة SiteMapResolveالأحداث، يمكنك إنشاء SiteMapNodeتمثيل لصفحة بدون تطبيق cusإلىm موقع المخطط الموفر.

يوضح مثال التعليمة البرمجية التالية كيف إلى معالجة SiteMapResolveحدث على صفحة ويب الخاصة ب ASP.NET إلى تعديل محددات مواقع المعلومات URL الهدف التي يتم عرضها بواسطة عنصر تحكم التنقل بين مواقع، مثل SiteMapPathعنصر التحكم. في this مثال, the الحالي الصفحة هو a ينشر الصفحة في an متصل bulletin board أو forum. تقديم الأهم موقع التنقل، محددات مواقع المعلومات الخاصة بالعقد المعروضة بواسطة يتم إلحاق عنصر تحكم التنقل باستخدام سلاسل استعلام ذات الصلة إلى سياق.

ملاحظةهو آمنة للوصول إلى CurrentNodeخاصية من داخل SiteMapResolveEventHandlerفئة. ASP.NET التنقل داخل موقع المتطورة البنية التحتية تحمي ضد العودية لا نهائية، في هذه الحالة.


private void Page_Load(object sender, EventArgs e)
{
    // The ExpandForumPaths method is called to handle
    // the SiteMapResolve event.
    SiteMap.SiteMapResolve +=
      new SiteMapResolveEventHandler(this.ExpandForumPaths);
}

private SiteMapNode ExpandForumPaths(Object sender, SiteMapResolveEventArgs e)
{
    // The current node represents a Post page in a bulletin board forum.
    // Clone the current node and all of its relevant parents. This
    // returns a site map node that a developer can then
    // walk, modifying each node.Url property in turn.
    // Since the cloned nodes are separate from the underlying
    // site navigation structure, the fixups that are made do not
    // effect the overall site navigation structure.
    SiteMapNode currentNode = SiteMap.CurrentNode.Clone(true);
    SiteMapNode tempNode = currentNode;

    // Obtain the recent IDs.
    int forumGroupID = GetMostRecentForumGroupID();
    int forumID = GetMostRecentForumID(forumGroupID);
    int postID = GetMostRecentPostID(forumID);

    // The current node, and its parents, can be modified to include
    // dynamic querystring information relevant to the currently
    // executing request.
    if (0 != postID)
    {
        tempNode.Url = tempNode.Url + "?PostID=" + postID.ToString();
    }

    if ((null != (tempNode = tempNode.ParentNode)) &&
        (0 != forumID))
    {
        tempNode.Url = tempNode.Url + "?ForumID=" + forumID.ToString();
    }

    if ((null != (tempNode = tempNode.ParentNode)) &&
        (0 != forumGroupID))
    {
        tempNode.Url = tempNode.Url + "?ForumGroupID=" + forumGroupID.ToString();
    }

    return currentNode;
}


System.Object
  System.EventArgs
    System.Web.SiteMapResolveEventArgs

يتم تأمين العملية الجزئية لأي عضو عمومي ثابت (مشترك في Visual Basic) من هذا النوع. لن يتم ضمان تأمين العملية الجزئية لأي عضو مثيل.

نظام التشغيل 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
إظهار: