WebPartManager.CatalogDisplayMode Feld

Definition

Stellt den Anzeigemodus dar, in dem Serversteuerelemente aus einem Katalog von Steuerelementen einer Seite hinzugefügt werden. Dieses Feld ist schreibgeschützt.

public: static initonly System::Web::UI::WebControls::WebParts::WebPartDisplayMode ^ CatalogDisplayMode;
public static readonly System.Web.UI.WebControls.WebParts.WebPartDisplayMode CatalogDisplayMode;
 staticval mutable CatalogDisplayMode : System.Web.UI.WebControls.WebParts.WebPartDisplayMode
Public Shared ReadOnly CatalogDisplayMode As WebPartDisplayMode 

Feldwert

Beispiele

Im folgenden Codebeispiel wird die programmgesteuerte Arbeit mit dem CatalogDisplayMode Feld veranschaulicht. Der Code füllt eine Dropdownliste mit den unterstützten Anzeigemodi für die Seite auf, die in diesem Fall Durchsuchen, Entwerfen und Katalog sind. Der Katalogmodus ist aufgrund des Elements und seiner untergeordneten <asp:CatalogZone> Elemente auf der Webseite verfügbar. Beachten Sie, dass der Code in der Page_PreRender -Methode überprüft, ob die aktuelle DisplayMode Eigenschaft auf CatalogDisplayModefestgelegt ist. Wenn ja, Label1 wird sichtbar, und wenn nicht, Label1 wird ausgeblendet.

<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  protected void Page_Init(object sender, EventArgs e)
  {
    foreach (WebPartDisplayMode mode in mgr.SupportedDisplayModes)
    {
      string modeName = mode.Name;
      if (mode.IsEnabled(mgr))
      {
        ListItem item = new ListItem(modeName, modeName);
        DisplayModeDropdown.Items.Add(item);
      }      
    }
  }

  protected void DisplayModeDropdown_SelectedIndexChanged(object 
    sender, EventArgs e)
  {
    String selectedMode = DisplayModeDropdown.SelectedValue;
    WebPartDisplayMode mode = 
      mgr.SupportedDisplayModes[selectedMode];
    if (mode != null)
      mgr.DisplayMode = mode;
  }

  protected void Page_PreRender(object sender, EventArgs e)
  {
    if (mgr.DisplayMode == WebPartManager.CatalogDisplayMode)
      Label1.Visible = true;
    else
      Label1.Visible = false;
  }
  
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
      <asp:WebPartManager ID="mgr" runat="server">
      </asp:WebPartManager>
      <asp:WebPartZone ID="WebPartZone1" runat="server">
        <ZoneTemplate>
          <asp:BulletedList 
            DisplayMode="HyperLink" 
            ID="BulletedList1" 
            runat="server"
            Title="My Links">
            <asp:ListItem Value="http://www.microsoft.com">
            Microsoft
            </asp:ListItem>
            <asp:ListItem Value="http://www.msn.com">
            MSN
            </asp:ListItem>
            <asp:ListItem Value="http://www.contoso.com">
            Contoso Corp.
            </asp:ListItem>
          </asp:BulletedList> 
        </ZoneTemplate>
      </asp:WebPartZone>
      <asp:WebPartZone ID="WebPartZone2" runat="server" />
      <asp:CatalogZone ID="CatalogZone1" runat="server">
        <ZoneTemplate>
          <asp:DeclarativeCatalogPart 
            ID="DeclarativeCatalogPart1" 
            runat="server">
            <WebPartsTemplate>
              <asp:Calendar ID="Calendar1" runat="server" 
                Title="My Calendar" />             
            </WebPartsTemplate>
          </asp:DeclarativeCatalogPart>
        </ZoneTemplate>
      </asp:CatalogZone>
      <hr />
      <asp:Label ID="Label1" runat="server" 
        Text="Currently in Catalog Mode" 
        Font-Bold="true"
        Font-Size="125%" />
      <br />
      <asp:DropDownList ID="DisplayModeDropdown" 
        runat="server" 
        AutoPostBack="true"
        Width="120"
        OnSelectedIndexChanged=
        "DisplayModeDropdown_SelectedIndexChanged">
      </asp:DropDownList>
    </div>
    </form>
</body>
</html>
<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  Protected Sub Page_Init(ByVal sender As Object, _
    ByVal e As EventArgs)
    Dim mode As WebPartDisplayMode
    For Each mode In mgr.SupportedDisplayModes
      Dim modeName As String = mode.Name
      If mode.IsEnabled(mgr) Then
        Dim item As ListItem = New ListItem(modeName, modeName)
        DisplayModeDropdown.Items.Add(item)
      End If
    Next
    
  End Sub

  Protected Sub DisplayModeDropdown_SelectedIndexChanged(ByVal _
    sender As Object, ByVal e As EventArgs)
    Dim selectedMode As String = _
      DisplayModeDropdown.SelectedValue
    Dim mode As WebPartDisplayMode = _
      mgr.SupportedDisplayModes(selectedMode)
    If mode IsNot Nothing Then
      mgr.DisplayMode = mode
    End If
  End Sub
  
  Protected Sub Page_PreRender(ByVal sender As Object, _
    ByVal e As System.EventArgs)
    If mgr.DisplayMode.Equals(WebPartManager.CatalogDisplayMode) Then
      Label1.Visible = True
    Else
      Label1.Visible = False
    End If
  End Sub
</script>

<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">
    <div>
      <asp:WebPartManager ID="mgr" runat="server">
      </asp:WebPartManager>
      <asp:WebPartZone ID="WebPartZone1" runat="server">
        <ZoneTemplate>
          <asp:BulletedList 
            DisplayMode="HyperLink" 
            ID="BulletedList1" 
            runat="server"
            Title="My Links">
            <asp:ListItem Value="http://www.microsoft.com">
            Microsoft
            </asp:ListItem>
            <asp:ListItem Value="http://www.msn.com">
            MSN
            </asp:ListItem>
            <asp:ListItem Value="http://www.contoso.com">
            Contoso Corp.
            </asp:ListItem>
          </asp:BulletedList> 
        </ZoneTemplate>
      </asp:WebPartZone>
      <asp:WebPartZone ID="WebPartZone2" runat="server" />
      <asp:CatalogZone ID="CatalogZone1" runat="server">
        <ZoneTemplate>
          <asp:DeclarativeCatalogPart 
            ID="DeclarativeCatalogPart1" 
            runat="server">
            <WebPartsTemplate>
              <asp:Calendar ID="Calendar1" runat="server" 
                Title="My Calendar" />             
            </WebPartsTemplate>
          </asp:DeclarativeCatalogPart>
        </ZoneTemplate>
      </asp:CatalogZone>
      <hr />
      <asp:Label ID="Label1" runat="server" 
        Text="Currently in Catalog Mode" 
        Font-Bold="true"
        Font-Size="125%" />
      <br />
      <asp:DropDownList ID="DisplayModeDropdown" 
        runat="server" 
        AutoPostBack="true"
        Width="120"
        OnSelectedIndexChanged=
        "DisplayModeDropdown_SelectedIndexChanged">
      </asp:DropDownList>
    </div>
    </form>
</body>
</html>

Nachdem Sie die Seite in einem Browser geladen haben, befinden Sie sich standardmäßig im Browsermodus. Beachten Sie, dass die Bezeichnung auf der Seite ausgeblendet ist. Verwenden Sie das Dropdownlistensteuerelement, um die Seite in den Katalogmodus zu wechseln. Beachten Sie, dass die Bezeichnung aufgrund des Codes in der Page_PreRender -Methode jetzt sichtbar ist. Sie können das Steuerelement im Katalog auswählen und einer der beiden Zonen auf der Seite hinzufügen.

Hinweise

Das CatalogDisplayMode Feld verweist auf ein benutzerdefiniertes WebPartDisplayMode Objekt, das vom WebPartManager Steuerelement erstellt und enthalten ist. Da es sich um ein statisches Objekt handelt, können Sie direkt über die WebPartManager -Klasse darauf verweisen, ohne dass ein instance des Steuerelements erforderlich ist.

Wenn Benutzer einer Seite Steuerelemente hinzufügen möchten, können sie die Seite CatalogDisplayMode in den Katalog (Katalogmodus) wechseln, und die Benutzeroberfläche des Katalogs wird angezeigt, wenn ein Katalog mit Serversteuerelementen verfügbar ist. Die Benutzeroberfläche für einen Webpartskatalog wird von einem CatalogZoneBase Zonensteuerelement bereitgestellt. Entwickler fügen diese Zone zur Entwurfszeit der Seite hinzu und fügen der Zone dann Serversteuerelemente hinzu, sodass Benutzer diese Steuerelemente zur Laufzeit ihren Seiten hinzufügen können. Nachdem der Entwickler diese Steuerelemente hinzugefügt hat, wird der Katalogmodus zu einem unterstützten Anzeigemodus auf der Seite, da die erforderlichen Steuerelemente vorhanden sind, um den Katalogmodus zu aktivieren.

Wenn ein Benutzer eine Seite in den Katalogmodus wechselt, werden die Zone und alle Serversteuerelemente, die ihr hinzugefügt wurden, sichtbar, und der Benutzer kann Steuerelemente aus dem Katalog auswählen, die der Seite hinzugefügt werden sollen, oder Steuerelemente von der Seite entfernen. Nachdem die Steuerelemente der Seite hinzugefügt wurden, werden sie im normalen Browsermodus angezeigt, und die Seite wird aktualisiert.

Gilt für:

Weitere Informationen