(0) exportieren Drucken
Alle erweitern

WebPart.AllowHide-Eigenschaft

Hinweis: Diese Eigenschaft ist neu in .NET Framework, Version 2.0.

Ruft einen Wert ab, der angibt, ob Endbenutzer ein WebPart-Steuerelement ausblenden können, oder legt diesen fest.

Namespace: System.Web.UI.WebControls.WebParts
Assembly: System.Web (in system.web.dll)

[ThemeableAttribute(false)] 
public virtual bool AllowHide { get; set; }
/** @property */
public boolean get_AllowHide ()

/** @property */
public void set_AllowHide (boolean value)

public function get AllowHide () : boolean

public function set AllowHide (value : boolean)

Eigenschaftenwert

true, wenn WebPart-Steuerelemente ausgeblendet werden können, andernfalls false. Der Standardwert ist true.

Die AllowHide-Eigenschaft bestimmt, ob die Hidden-Eigenschaft geändert werden kann. Mit der Standardeinstellung für den Eigenschaftenwert, true, können Benutzer den Wert ändern, wenn das Steuerelement bearbeitet wird. Standardmäßig werden Steuerelemente nicht ausgeblendet, und ihr Hidden-Eigenschaftenwert ist false. Wenn ein Benutzer während der Bearbeitung eines WebPart-Steuerelements ein Kontrollkästchen zum Ausblenden des Steuerelements aktiviert (wodurch die Hidden-Eigenschaft auf true festgelegt wird), wird das Steuerelement nach dem Zurückschalten der Seite in den Durchsuchen-Modus nicht mehr angezeigt.

Ausgeblendete Steuerelemente unterscheiden sich von geschlossenen Steuerelementen, da die Hidden-Eigenschaft innerhalb des Webparts-Steuerelementsatzes eine andere Bedeutung hat. Geschlossene Steuerelemente werden auf einer Seite nicht wiedergegeben und nehmen nicht an Ereignissen des Lebenszyklus der Seite teil. Im Gegensatz dazu sind ausgeblendete WebPart-Steuerelemente für Benutzer zwar nicht sichtbar, werden auf der Webseite aber dennoch wiedergegeben und können als Teil einer Webparts-Anwendung Verbindungen mit anderen WebPart-Steuerelementen eingehen.

Diese Eigenschaft kann nicht durch Designs oder Stylesheetdesigns festgelegt werden. Weitere Informationen finden Sie unter ThemeableAttribute und unter Übersicht über ASP.NET-Designs und ASP.NET-Skins.

Der Personalisierungsbereich dieser Eigenschaft ist auf Shared festgelegt und kann nur von autorisierten Benutzern geändert werden. Weitere Informationen finden Sie unter PersonalizableAttribute und unter Übersicht über die Webparts-Personalisierung.

Im folgenden Codebeispiel wird veranschaulicht, wie die Standardeinstellung der AllowHide-Eigenschaft für ein benutzerdefiniertes Webparts-Steuerelement geändert wird, sodass dieses von Benutzern nicht ausgeblendet werden kann. In diesem Beispiel wird von der Verwendung des benutzerdefinierten WebPart-Steuerelements TextDisplayWebPart ausgegangen, das im Beispielabschnitt der Übersicht über die WebPart-Klasse zu finden ist.

Das Codebeispiel umfasst auch ein benutzerdefiniertes Benutzersteuerelement, das es Benutzern ermöglicht, den Anzeigemodus auf einer Webparts-Seite zu ändern. Auf das Benutzersteuerelement wird mittels einer Register-Direktive im oberen Bereich der Webseite verwiesen, die das Benutzersteuerelement hostet. Ausführliche Anweisungen zum Erstellen dieses Benutzersteuerelements und zur Arbeit mit Anzeigemodi finden Sie unter Exemplarische Vorgehensweise: Entwickeln und Verwenden eines benutzerdefinierten Serversteuerelements.

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

Beachten Sie im deklarativen Markup für die Webseite das AllowHide="false"-Attribut für das auf das Steuerelement verweisende <aspSample:TextDisplayWebPart>-Element. Durch dieses Attribut wird verhindert, dass das Steuerelement während der Bearbeitung ausgeblendet werden kann. Laden Sie die Seite in einem Browser, und schalten Sie sie mithilfe des Dropdownlisten-Steuerelements Anzeigemodus in den Bearbeitungsmodus. Klicken Sie anschließend auf das Verbenmenü auf der Titelleiste des WebPart-Steuerelements und dann auf das Bearbeiten-Verb. Sobald die Benutzeroberfläche angezeigt wird, können Sie feststellen, dass die Benutzeroberfläche zum Bearbeiten der Hidden-Eigenschaft deaktiviert ist, da der Wert der AllowHide-Eigenschaft auf false festgelegt wurde.

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

<html>
<head id="Head1" runat="server">
  
</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"
      title="Zone 1"
      PartChromeType="TitleAndBorder">
        <parttitlestyle font-bold="true" ForeColor="#3300cc" />
        <partstyle
          borderwidth="1px"   
          borderstyle="Solid"  
          bordercolor="#81AAF2" />
        <zonetemplate>
          <aspSample:TextDisplayWebPart 
            runat="server"   
            id="textwebpart" 
            title = "Text Content WebPart"
            AllowHide="false" />
        </zonetemplate>
    </asp:webpartzone>
    <asp:EditorZone id="EditZone1" Runat="server">
      <ZoneTemplate>
        <asp:AppearanceEditorPart ID="editor1" Runat="server" />
      </ZoneTemplate>
    </asp:EditorZone>
  </form>
</body>
</html>

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

.NET Framework

Unterstützt in: 2.0
Anzeigen:
© 2014 Microsoft