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.

WebPart.AllowZoneChange الخاصية

Visual Studio 2010

الحصول أو تعيين القيمة تشير إلى ما إذا كان يمكن لمستخدم تحريك WebPartعنصر تحكم بين WebPartZoneBaseالمناطق.

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

[PersonalizableAttribute(PersonalizationScope.Shared)]
[ThemeableAttribute(false)]
public virtual bool AllowZoneChange { get; set; }
<asp:WebPart AllowZoneChange="True|False" />

قيمة الخاصية

النوع: System.Boolean
true إذاWebPartعنصر تحكم يمكنك التنقل بين المناطق؛ وإلا،false. القيمة الافتراضية هي true.

When the AllowZoneChange property هو true, and a صفحة ويب هو in a display mode that allows layout changes (such as edit or الوضع التصميم), a user can change the page layout by moving a control to another WebPartZoneBase zone on the page. إذا كانت خاصية هو تعيين إلى false، عنصر تحكم لا يمكن نقلها بين المناطق، ولكن مازال يمكن نقلها داخل به المنطقة الحالي.

This خاصية cannot be التعيين بواسطة themes أو النمط ورقة themes. للمزيد من المعلومات، راجع ThemeableAttribute وسمات ASP.NET و الأسطح.

نطاق التخصيص th هو خاصية هو Sharedويمكن تعديلها فقط من قبل المستخدمين المخولين. للمزيد من المعلومات، راجع PersonalizableAttribute ونظرة عامة حول تخصيص أجزاء ويب.

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

مثال التعليمة البرمجية أيضا باستخدام عنصر تحكم مستخدم مخصصة التي تمكن المستخدمين من تغيير أوضاع عرض على "أجزاء ويب" الصفحة. عنصر تحكم المستخدم المشار إليها من قبل Registerموجها بالقرب من أعلى صفحة ويب التي تستضيف عنصر تحكم المستخدم. For a مُفصل وصف of how إلى إنشاء this مستخدم عنصر تحكم و work مع عرض modes, see الإرشادات التفصيلية: تطوير و استخدام عنصر تحكم خادم مخصص.


<%@ 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>


في ترميز مصرحة صفحة ويب، على الثاني <aspSample:TextDisplayWebPart>العنصر، ملاحظة AllowZoneChange="false"السمة. في وقت التنفيذ، يمكن يسحب مستخدم النهائي أول عنصر تحكم إلى WebPartZone2، ولكن قد لا تماما مع الثاني عنصر تحكم. تحميل الصفحة في مستعرض و استخدام عنصر تحكم القائمة منسدلة الوضع عرض لتغيير الوضع عرض إلى الوضع التصميم. محاولة يسحب كل من WebPartعناصر التحكم في منطقة أخرى، و ملاحظة سلوك آخر استناداً في قيم الخاصة بها AllowZoneChangeالخصائص.


<%@ page language="C#" %>
<%@ register TagPrefix="uc1" 
  TagName="DisplayModeMenuCS" 
  Src="DisplayModeMenuCS.ascx" %>
<%@ register tagprefix="aspSample" 
  Namespace="Samples.AspNet.CS.Controls" 
  Assembly="TextDisplayWebPartCS"%>

<!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 id="Head1" runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
  <form id="Form1" runat="server">
    <asp:webpartmanager id="WebPartManager1" runat="server" />
    <uc1:DisplayModeMenuCS ID="DisplayModeMenu1" runat="server" />
    <asp:webpartzone
      id="WebPartZone1"
      runat="server"
      PartChromeType="TitleAndBorder">
        <parttitlestyle font-bold="true" ForeColor="#3300cc" />
        <partstyle
          borderwidth="1px"   
          borderstyle="Solid"  
          bordercolor="#81AAF2" />
        <zonetemplate>
          <aspSample:TextDisplayWebPart 
            runat="server"   
            id="textwebpart1" 
            title = "Text WebPart 1" />
        </zonetemplate>
    </asp:webpartzone>
    <asp:webpartzone
      id="WebPartZone2"
      runat="server"
      PartChromeType="TitleAndBorder">
        <parttitlestyle font-bold="true" ForeColor="#3300cc" />
        <partstyle
          borderwidth="1px"   
          borderstyle="Solid"  
          bordercolor="#81AAF2" />
        <zonetemplate>
          <aspSample:TextDisplayWebPart 
            runat="server"   
            id="textwebpart2" 
            title = "Text WebPart 2"
            AllowZoneChange="false" />
        </zonetemplate>
    </asp:webpartzone>
  </form>
</body>
</html>


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