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.

WebPartZoneBase الفئة

Visual Studio 2010

يعمل كالاساس فئة لكل منطقة من عناصر التحكم التي تعمل حاويات ل WebPart(أو غير ذلك الملقم أو مستخدم) عناصر التحكم.

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

public abstract class WebPartZoneBase : WebZone, 
	IPostBackEventHandler
<asp:WebPartZoneBase />

التحكم في "أجزاء ويب" في مجموعة، ومنطقة هو عنصر تحكم مركب، عرض كجدول HTML، الذي يحتوي على عناصر تحكم أخرى في منطقة المحددة لصفحة ويب. WebPartZoneBase الفئة هو منطقة التي ترث من الأساس الفئة توفير التعيين أساسية من السلوكيات المشتقة من المناطق التي تحتوي على WebZoneو WebPartعناصر التحكم وعناصر تحكم الخادم، وعناصر تحكم مستخدم. التركيبة من WebPartZoneBaseالمناطق ذات WebPart(والخادم الآخر) عناصر التحكم تشكل واجهة مستخدم أساسية لتطبيق "أجزاء ويب"، والعرض العادي الخاص بصفحة للمستخدمين التفاعل مع معظم الوقت.

الجميع المناطق بتوفير التعيين شائعة من واجه المستخدم عناصر لعناصر التحكم التي تحتوي عليها. لمناقشة مُفصل لعناصر واجهة مستخدم الشائعة إلى الجميع المناطق، راجع فئة النظرة العامة إلى صورة ل WebZoneclass. WebPartZoneBase تتضمن منطقة مقطع نص الذي يحتوي تشغيل عناصر تحكم الخادم، و sociated كـ WebPartChromeكائن المستخدم لعرض عناصر التحكم المضمنة وعناصر كروم الخاصة بهم، مثل كـ الخاصة بهم الأفعال والحدود، وهكذا.

بالإضافة إلى الميزات الموروثة من WebZoneالفئة، WebPartZoneBaseيضيف فئة الأفعال السحب، محددة تحكم العميل (لتمكين إجراءات واجهة مستخدم عام مثل تصغير أو إغلاق أو حذفها، و ‏‏تحرير عناصر التحكم)، و ميزات أنماط إضافى. WebPartZoneBase الفئة هو أيضا منطقة الفئة يرث من إذا كنت ترغب في تصميم مخصص التي هو تستند إلى قاعدة بيانات. على سبيل المثال، يمكنك إنشاء إحدى مناطق "أجزاء ويب" مخصصة الطقس يرث من WebPartZoneBase، وهو مصمم لاحتواء وتوفير ميزات التخطيط وخدمات غير ذلك ل WebPartعناصر التحكم التي يتم حدود بيانات وعرض معلومات الطقس.

WebPartZoneBase الفئة يحتوي على عدد من الخصائص للعمل مع السمات النمط في المنطقة. هناك عدة خصائص للحدود، بما في ذلك BorderStyleو BorderWidth. هناك هو مجموعة من الخصائص للعمل مع السمات النمط قوائم التي يمكن أن تظهر في عنوان لمنطقة ما، مثل MenuLabelStyle، MenuVerbStyle، وآخرون.

WebPartZoneBase كما يحتوي على فئة رقم من الأعضاء لمعالجة الأفعال في المنطقة. ربط هؤلاء الأعضاء إلى الأفعال التي تظهر في جزء عناصر التحكم في المنطقة. بينما منطقة-تمت الإضافة أفعال المستوى إلى WebPartZoneBaseمنطقة s، بشكل افتراضي ليس لديهم أي. هناك هو تعيين التعيين من الأفعال القياسية المتوفرة مع عنصر التحكم "أجزاء ويب" للاستخدام مع عناصر جزء، ويمكن للمطورين إضافة أفعال المخصص أيضا. بعض الخصائص الهامة للعمل مع أفعال تضمين الخصائص التي تشير إلى بعض الفعل القياسية الكائنات، مثل كـ CloseVerb، ConnectVerb، DeleteVerb، و EditVerb، HelpVerb، و MinimizeVerb. الأفعال القياسية التي تظهر في قائمة أفعال (عادة يتم تقديمها في واجهة المستخدم كـ قائمة منسدلة) في شريط عنوان لكل عنصر تحكم موجود في منطقة ما. هناك هو أيضا VerbButtonTypeخاصية التي تسمح لك بتحديد نوع الكائن قابلة للنقر يمثل فعل في واجهة المستخدم.

تضمين الأعضاء الآخرين المفاتيح للعمل مع أفعال OnCreateVerbsالأسلوب، الذي هو معالج أحداث الذي يمكن تجاوزها لمعالجة مخصصة لعملية إنشاء فعل، و CreateVerbsحدث.

WebPartZoneBase يحتوي على فئة رقم من الأعضاء للعمل مع WebPartعناصر التحكم الموجودة داخل المنطقة. WebParts تشير خاصية المجموعة الجميع WebPart(و الملقم الآخر) عناصر التحكم في المنطقة. تتوافق مع العديد من الطرق للأفعال القياسية أو الإجراءات التي يمكن لمستخدم تنفيذ عملية تشغيل WebPartعناصر التحكم في منطقة ما، مثل CloseWebPart، ConnectWebPart، و EditWebPart.

وهناك أيضا عدد من الأعضاء في WebPartZoneBaseذلك مهما لفئة كيفية WebPartتخطيط عناصر التحكم أو مرتبة ضمن منطقة. AllowLayoutChange خاصية بتحديد ما إذا كان يمكن نقلها بين المناطق عناصر التحكم أو إعادة ترتيبها ضمن منطقة ما بواسطة المستخدمين. LayoutOrientation خاصية تسمح لك إلى تحديد ما إذا كان يتم ترتيب عناصر التحكم في إحدى مناطق أفقياً أو عمودياً.

ملاحظةملاحظة

قد يقوم إنترنت مستكشف بتقديم الارتفاع WebPartZoneأو عناصر التحكم المضمنة الخاصة به بطريقة غير متوقعة، استناداً إلى الاتجاه منطقة. ل المزيد التفاصيل، راجع الوثائق الخاصة LayoutOrientationأو Heightالخصائص.

وظائف غير ذلك في WebPartZoneBaseفئة تزويدك بمفصل البرمجي عنصر تحكم عبر عرض مناطق مختلفة من المنطقة. العديد من هذه الطرق بتجاوز الأساليب الأساسية موروثة من WebZoneالفئة، إلى cusإلىmize التقديم للمناطق التي تحتوي على WebPartعناصر التحكم. هام تضمين وظائف Render، RenderBody، RenderDropCue، و RenderHeader.

يلي تعليمات برمجية يوضح المثال استخدام WebPartZoneBaseفئة. التعليمة البرمجية يوضح كيفية فصل دراسي مشتق، WebPartZone، هو يستخدم بشكل إلزامي في صفحة "أجزاء ويب" لاحتواء WebPartعناصر التحكم. تعليمات برمجية مثال على الرابع أقسام: تصف المقاطع الثلاثة الأولى من ملفات تعليمات برمجية، ويشرح الرابع كيفية إلى تشغيل تعليمات برمجية.

الجزء أول من المثال تعليمات برمجية هو عنصر تحكم مستخدم بتمكين المستخدمين من في تحويل الصفحة في في أوضاع عرض المختلفة. للحصول تشغيل مزيد من المعلومات حول "أجزاء ويب" عرض الأوضاع ووصف تعليمات برمجية في عنصر التحكم هذا، راجع الإرشادات التفصيلية: تغيير أوضاع العرض على صفحة أجزاء ويب.


<%@ control language="C#" classname="DisplayModeMenuCS"%>
<script runat="server">

 // Use a field to reference the current WebPartManager.
  WebPartManager _manager;

  void Page_Init(object sender, EventArgs e)
  {
    Page.InitComplete += new EventHandler(InitComplete);
  }  

  void InitComplete(object sender, System.EventArgs e)
  {
    _manager = WebPartManager.GetCurrentWebPartManager(Page);

    String browseModeName = WebPartManager.BrowseDisplayMode.Name;

    // Fill the dropdown with the names of supported display modes.
    foreach (WebPartDisplayMode mode in _manager.SupportedDisplayModes)
    {
      String modeName = mode.Name;
      // Make sure a mode is enabled before adding it.
      if (mode.IsEnabled(_manager))
      {
        ListItem item = new ListItem(modeName, modeName);
        DisplayModeDropdown.Items.Add(item);
      }
    }

    // If shared scope is allowed for this user, display the scope-switching
    // UI and select the appropriate radio button for the current user scope.
    if (_manager.Personalization.CanEnterSharedScope)
    {
      Panel2.Visible = true;
      if (_manager.Personalization.Scope == PersonalizationScope.User)
        RadioButton1.Checked = true;
      else
        RadioButton2.Checked = true;
    }

  }

  // Change the page to the selected display mode.
  void DisplayModeDropdown_SelectedIndexChanged(object sender, EventArgs e)
  {
    String selectedMode = DisplayModeDropdown.SelectedValue;

    WebPartDisplayMode mode = _manager.SupportedDisplayModes[selectedMode];
    if (mode != null)
      _manager.DisplayMode = mode;
  }

  // Set the selected item equal to the current display mode.
  void Page_PreRender(object sender, EventArgs e)
  {
    ListItemCollection items = DisplayModeDropdown.Items;
    int selectedIndex = 
      items.IndexOf(items.FindByText(_manager.DisplayMode.Name));
    DisplayModeDropdown.SelectedIndex = selectedIndex;
  }

  // Reset all of a user's personalization data for the page.
  protected void LinkButton1_Click(object sender, EventArgs e)
  {
    _manager.Personalization.ResetPersonalizationState();
  }

  // If not in User personalization scope, toggle into it.
  protected void RadioButton1_CheckedChanged(object sender, EventArgs e)
  {
    if (_manager.Personalization.Scope == PersonalizationScope.Shared)
      _manager.Personalization.ToggleScope();
  }

  // If not in Shared scope, and if user is allowed, toggle the scope.
  protected void RadioButton2_CheckedChanged(object sender, EventArgs e)
  {
    if (_manager.Personalization.CanEnterSharedScope && 
        _manager.Personalization.Scope == PersonalizationScope.User)
      _manager.Personalization.ToggleScope();
  }
</script>
<div>
  <asp:Panel ID="Panel1" runat="server" 
    Borderwidth="1" 
    Width="230" 
    BackColor="lightgray"
    Font-Names="Verdana, Arial, Sans Serif" >
    <asp:Label ID="Label1" runat="server" 
      Text="&nbsp;Display Mode" 
      Font-Bold="true"
      Font-Size="8"
      Width="120" 
      AssociatedControlID="DisplayModeDropdown"/>
    <asp:DropDownList ID="DisplayModeDropdown" runat="server"  
      AutoPostBack="true" 
      Width="120"
      OnSelectedIndexChanged="DisplayModeDropdown_SelectedIndexChanged" />
    <asp:LinkButton ID="LinkButton1" runat="server"
      Text="Reset User State" 
      ToolTip="Reset the current user's personalization data for the page."
      Font-Size="8" 
      OnClick="LinkButton1_Click" />
    <asp:Panel ID="Panel2" runat="server" 
      GroupingText="Personalization Scope"
      Font-Bold="true"
      Font-Size="8" 
      Visible="false" >
      <asp:RadioButton ID="RadioButton1" runat="server" 
        Text="User" 
        AutoPostBack="true"
        GroupName="Scope" OnCheckedChanged="RadioButton1_CheckedChanged" />
      <asp:RadioButton ID="RadioButton2" runat="server" 
        Text="Shared" 
        AutoPostBack="true"
        GroupName="Scope" 
        OnCheckedChanged="RadioButton2_CheckedChanged" />
    </asp:Panel>
  </asp:Panel>
</div>


الجزء الثاني من مثال التعليمة البرمجية هو جانب رمز ملف يحتوي على تعليمات برمجية لمعالجة الحدث الرئيسي صفحة ويب. تعليمات برمجية في هذا الملف يوضح كيفية العمل مع بعض المفاتيح WebPartZoneBaseالأعضاء برمجياً.


using System;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;

public partial class WebPartZoneBase_overview : System.Web.UI.Page
{
  protected void Page_Load(Object sender, EventArgs e)
  {
    Label1.Text = DateTime.Now.ToLongDateString();
    Label2.Text = String.Empty;
  }

  protected void Button1_Click(object sender, EventArgs e)
  {
    if (WebPartZone2.VerbButtonType == ButtonType.Button)
      WebPartZone2.VerbButtonType = ButtonType.Link;
    else
      WebPartZone2.VerbButtonType = ButtonType.Button;
  }

  protected void Button2_Click(object sender, EventArgs e)
  {
    if (WebPartZone1.LayoutOrientation == Orientation.Vertical)
      WebPartZone1.LayoutOrientation = Orientation.Horizontal;
    else
      WebPartZone1.LayoutOrientation = Orientation.Vertical;
    Page_Load(sender, e);
  }

  protected void Button3_Click(object sender, EventArgs e)
  {
    StringBuilder builder = new StringBuilder();
    builder.AppendLine(@"<strong>WebPartZone1 WebPart IDs</strong><br />");
    foreach (WebPart part in WebPartZone1.WebParts)
    {
      builder.AppendLine("ID: " + part.ID 
                          + "; Type:  " + part.GetType() 
                          + @"<br />");
    }
    Label2.Text = builder.ToString();
    Label2.Visible = true;
  }

  protected void Button4_Click(object sender, EventArgs e)
  {
    StringBuilder builder = new StringBuilder();
    builder.AppendLine(@"<strong>WebPartZone1 DisplayTitle Property</strong><br />");
    builder.AppendLine(WebPartZone1.DisplayTitle + @"<br />");
    Label2.Text = builder.ToString();
    Label2.Visible = true;
  }
}


الجزء الثالث من مثال التعليمة البرمجية هو الويب الصفحة الذي يحتوي على WebPartZoneعناصر التحكم التي تحدث نفس المشكلة من الأساس WebPartZoneBaseفئة، و WebPartعناصر التحكم الموجودة في مناطق.


<%@ Page Language="C#" 
  Codefile="webpartzonebase_overview.cs"
  Inherits="WebPartZoneBase_overview"  %>
<%@ register TagPrefix="uc1" 
  TagName="DisplayModeMenuCS" 
  Src="DisplayModeMenuCS.ascx" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>WebPartZoneBase Example</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
      <asp:WebPartManager ID="WebPartManager1" Runat="server" />
      <uc1:DisplayModeMenuCS ID="DisplayModeMenu1" runat="server" />
      <table width="75%">
        <tr>
          <td>
            <asp:WebPartZone 
              ID="WebPartZone1" 
              Runat="server"
              LayoutOrientation="Vertical" >
              <EditVerb Text="Edit WebPart" />
              <SelectedPartChromeStyle BackColor="LightBlue" />
              <ZoneTemplate>
                <asp:BulletedList 
                  ID="BulletedList1" 
                  Runat="server"
                  DisplayMode="HyperLink" 
                  Title="Favorite Links" >
                  <asp:ListItem Value="http://msdn.microsoft.com">
                    MSDN
                  </asp:ListItem>
                  <asp:ListItem Value="http://www.asp.net">
                    ASP.NET
                  </asp:ListItem>
                  <asp:ListItem Value="http://www.msn.com">
                    MSN
                  </asp:ListItem>
                </asp:BulletedList>
                <asp:Calendar ID="Calendar1" Runat="server" 
                  Title="My Calendar" />
              </ZoneTemplate>
            </asp:WebPartZone>
          </td>
          <td valign="top" align="right">
            <asp:WebPartZone 
              ID="WebPartZone2"
              Runat="server" 
              DragHighlightColor="#00ff00"
              AllowLayoutChange="true"
              EmptyZoneText="Add WebParts to this empty Zone."
              BorderWidth="2"
              BorderColor="DarkBlue"
              BorderStyle="Dashed" 
              MenuLabelText="Verbs Menu" 
              MenuPopupImageUrl="label.gif" >
              <VerbStyle Font-Italic="true" />
              <MenuLabelStyle BackColor="Lime" BorderWidth="1"  />
              <MenuLabelHoverStyle Font-Bold="true" />
              <MenuVerbHoverStyle BackColor="LightGrey" />
              <MenuVerbStyle Font-Italic="true" /> 
              <ZoneTemplate>
                <asp:Label ID="Label1" Runat="server" Title="Date" />
              </ZoneTemplate>
            </asp:WebPartZone>
          </td>
        </tr>
        <tr>
          <td>
            <asp:EditorZone ID="EditorZone1" Runat="server">
              <ZoneTemplate>
                <asp:AppearanceEditorPart ID="AppearanceEditorPart1" 
                  Runat="server" />
                <asp:LayoutEditorPart ID="LayoutEditorPart1" 
                  Runat="server" />
              </ZoneTemplate>
            </asp:EditorZone>      
          </td>
        </tr>
      </table>
    </div>
    <asp:Button ID="Button1" Runat="server" 
      Width="200" Text="Toggle WebPartZone2 Buttons" 
      OnClick="Button1_Click" />
    <br />
    <asp:Button ID="Button2" Runat="server" 
      Width="200"  Text="Toggle Layout Orientation" 
      OnClick="Button2_Click" />
    <br />
    <asp:Button ID="Button3" Runat="server" 
      Width="200" Text="List WebPartZone1 WebParts" 
      OnClick="Button3_Click" />
    <br />
    <asp:Button ID="Button4" Runat="server" 
      Width="200" Text="WebPartZone1 Display Title" 
      OnClick="Button4_Click" />
    <br />
    <asp:Label ID="Label2" Runat="server" Visible="false" />
    </form>
</body>
</html>


قم بتحميل صفحة ويب في مستعرض. استخدام عنصر تحكم قائمة منسدلة الوضع عرض إلى تحويل الصفحة في إلى الوضع التصميم، انقر فوق WebPart، وعناصر التحكم وحاول سحبها بين المناطق المرئية. انقر فوق بعض butإلىns تشغيل الصفحة إلى رؤية تأثير استخدام عدة الأعضاء WebPartZoneBaseفئة. بعد ذلك، قم بتحويل الصفحة إلى الوضع التحرير. تأكد من WebPartعنصر تحكم توضع في WebPartZone2، انقر فوق قائمة الأفعال تشغيل شريط عنوان عنصر تحكم's، ثم انقر فوق تحرير لتحرير عنصر تحكم. الانتهاء من ‏‏تحرير عنصر التحكم، ثم قم بتحرير واحد عناصر التحكم الموجودة في منطقة غير ذلك. كما يمكنك تنفيذ هذه الخطوات، لاحظ الاختلافات في أنماط واجهة المستخدم عناصر التحكم والمناطق، وهي عبارة عن تأثير استخدام عدة الأعضاء WebPartZoneBaseclass.

يتم تأمين العملية الجزئية لأي عضو عمومي ثابت (مشترك في 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
إظهار: