Partager via


WebPart - Classe

Fournit la classe de base pour la création de Microsoft SharePoint Foundation composants WebPart.

Hiérarchie d’héritage

System.Object
  System.Web.UI.Control
    System.Web.UI.WebControls.WebControl
      System.Web.UI.WebControls.Panel
        System.Web.UI.WebControls.WebParts.Part
          System.Web.UI.WebControls.WebParts.WebPart
            Microsoft.SharePoint.WebPartPages.WebPart
              

Espace de noms :  Microsoft.SharePoint.WebPartPages
Assembly :  Microsoft.SharePoint (dans Microsoft.SharePoint.dll)

Syntaxe

'Déclaration
<SupportsAttributeMarkupAttribute(False)> _
<AspNetHostingPermissionAttribute(SecurityAction.LinkDemand, Level := AspNetHostingPermissionLevel.Minimal)> _
<AspNetHostingPermissionAttribute(SecurityAction.InheritanceDemand, Level := AspNetHostingPermissionLevel.Minimal)> _
Public MustInherit Class WebPart _
    Inherits WebPart _
    Implements INamingContainer, IAttributeAccessor, IConnectionData
'Utilisation
Dim instance As WebPart
[SupportsAttributeMarkupAttribute(false)]
[AspNetHostingPermissionAttribute(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermissionAttribute(SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal)]
public abstract class WebPart : WebPart, 
    INamingContainer, IAttributeAccessor, IConnectionData

Remarques

L'infrastructure de composant WebPart SharePoint Foundation est conçu et construit pour se situent en haut de l'infrastructure de composant WebPart Microsoft ASP.NET. Les composants WebPart qui héritent de WebPart sont entièrement pris en charge Microsoft SharePoint Foundation (à l'exception des contrôles utilisateur en tant que composant WebPart générique) et peuvent être utilisés non seulement dans les applications ASP.NET, mais également dans les applications SharePoint Foundation, si SharePoint Foundation est impliqué ou non. La classeWebPartSharePoint Foundation fait partie d'une infrastructure qui a été conçue spécifiquement pour les sites SharePoint et composants WebPart qui héritent de cette classe peut être utilisée uniquement dans les sites SharePoint.

When creating new Web Parts, you have the option of creating Web Parts that inherit from System.Web.UI.WebControls.WebParts.WebPart (recommended) or Microsoft.SharePoint.WebPartPages.WebPart. The SharePoint FoundationWebPart class exists primarily for the purpose of backward compatibility and to provide a small set of features that are not available in the System.Web.UI.WebControls.WebParts.WebPart class.

L'ensemble des fonctionnalités offertes exclusivement par Microsoft.SharePoint.WebPartPages.WebPart est la suivante :

  • Connexions entre pages

  • Connexions entre les composants WebPart qui se trouvent en dehors d'une zone

  • Connexions côté client (Composant Services Page de composants WebPart)

  • Mise en cache de l'infrastructure, notamment la possibilité de cache à la base de données

For more information, see Windows SharePoint Services and Web Parts.

Exemples

The following code example shows a simple Web Part that contains HtmlButton and HtmlInputText controls that allow the user to change the Web Part's Title property. For a step-by-step walkthrough of creating this Web Part, see Walkthrough: Creating a Basic SharePoint Web Part.

Imports System
Imports System.ComponentModel
Imports System.Runtime.InteropServices
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Xml.Serialization
Imports Microsoft.SharePoint
Imports Microsoft.SharePoint.WebPartPages
Imports Microsoft.SharePoint.Utilities
Imports System.Web.UI.HtmlControls

Namespace WebPartLibrary1
   ' This Web Part changes it's own title and implements a custom property.
   <XmlRoot([Namespace] := "WebPartLibrary1")>  _
   Public Class SimpleWebPart
      Inherits WebPart
      Private Const defaultText As String = "hello"
      Private [text] As String = defaultText

      ' Declare variables for HtmlControls user interface elements.
      Private _mybutton As HtmlButton
      Private _mytextbox As HtmlInputText      

      ' Event handler for _mybutton control that sets the
      ' Title property to the value in _mytextbox control.
      Public Sub _mybutton_click(sender As Object, e As EventArgs)
         Me.Title = _mytextbox.Value
         Try
            Me.SaveProperties = True
         Catch Else
            Caption = "Error... Could not save property."
         End Try
      End Sub      

      ' Override the ASP.NET Web.UI.Controls.CreateChildControls 
      ' method to create the objects for the Web Part's controls.      
      Protected Overrides Sub CreateChildControls()
         ' Create _mytextbox control.
         _mytextbox = New HtmlInputText()
         _mytextbox.Value = ""
         Controls.Add(_mytextbox)

         ' Create _mybutton control and wire its event handler.
         _mybutton = New HtmlButton()
         _mybutton.InnerText = "Set Web Part Title"
         AddHandler _mybutton.ServerClick, AddressOf _mybutton_click
         Controls.Add(_mybutton)
      End Sub      

      <Browsable(True), Category("Miscellaneous"), DefaultValue(defaultText), WebPartStorage(Storage.Personal), FriendlyName("Text"), Description("Text Property")>  _
      Public Property [Text]() As String
         Get
            Return [text]
         End Get

         Set
            [text] = value
         End Set
      End Property      

      Protected Overrides Sub RenderWebPart(output As HtmlTextWriter)
         RenderChildren(output)
         ' Securely write out HTML
         output.Write(("<BR>Text Property: " + SPEncode.HtmlEncode([Text])))
      End Sub
   End Class
End Namespace
//--------------------------------------------------------------------
// File: SimpleWebPart.cs
//
// Purpose: A sample Web Part that demonstrates how to create a basic
// Web Part.
//--------------------------------------------------------------------

using System;
using System.ComponentModel;
using System.Runtime.InteropServices;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Xml.Serialization;
using Microsoft.SharePoint;
using Microsoft.SharePoint.WebPartPages;
using Microsoft.SharePoint.Utilities;
using System.Web.UI.HtmlControls;

namespace WebPartLibrary1
{
    /// <summary>
    /// This Web Part changes its title and implements a custom property.
    /// </summary>
    [XmlRoot(Namespace="WebPartLibrary1")]    
    public class SimpleWebPart : WebPart
    {
        private const string defaultText = "hello";
        private string text=defaultText;

        // Declare variables for HtmlControls user interface elements.
        HtmlButton _mybutton;
        HtmlInputText _mytextbox;

        // Event handler for _mybutton control that sets the
        // Title property to the value in _mytextbox control.
        public void _mybutton_click (object sender, EventArgs e)
        {
            this.Title = _mytextbox.Value;
            try
            {
                this.SaveProperties=true;
            }
            catch
            {
                Caption = "Error... Could not save property.";
            }
        }

        // Override the ASP.NET Web.UI.Controls.CreateChildControls 
        // method to create the objects for the Web Part's controls.      
        protected override void CreateChildControls ()
        {         
            // Create _mytextbox control.
            _mytextbox = new HtmlInputText();
            _mytextbox.Value="";
            Controls.Add(_mytextbox);

            // Create _mybutton control and wire its event handler.
            _mybutton = new HtmlButton();
            _mybutton.InnerText = "Set Web Part Title";
            _mybutton.ServerClick += new EventHandler (_mybutton_click);
            Controls.Add (_mybutton);
        }

        [Browsable(true),Category("Miscellaneous"),
        DefaultValue(defaultText),
        WebPartStorage(Storage.Personal),
        FriendlyName("Text"),Description("Text Property")]
        public string Text
        {
            get
            {
                return text;
            }

            set
            {
                text = value;
            }
        }

        protected override void RenderWebPart(HtmlTextWriter output)
        {
            RenderChildren(output);
            // Securely write out HTML
            output.Write("<BR>Text Property: " + SPEncode.HtmlEncode(Text));    
        }
    }
}

Cohérence de thread

Tous les membres statique (Partagé dans Visual Basic)s publics de ce type sont thread-safe. Cela n’est pas garanti pour les membres d’instance.

Voir aussi

Référence

WebPart - Membres

Microsoft.SharePoint.WebPartPages - Espace de noms

Hiérarchie d’héritage

System.Object
  System.Web.UI.Control
    System.Web.UI.WebControls.WebControl
      System.Web.UI.WebControls.Panel
        System.Web.UI.WebControls.WebParts.Part
          System.Web.UI.WebControls.WebParts.WebPart
            Microsoft.SharePoint.WebPartPages.WebPart
              Microsoft.SharePoint.WebControls.ApplicationAssociationsViewWebPart
              Microsoft.SharePoint.WebControls.TopologyViewWebPart
              Microsoft.SharePoint.WebPartPages.AccessRequestsHideOldRequestsLink
              Microsoft.SharePoint.WebPartPages.AccessRequestsHideOldRequestsOnLoad
              Microsoft.SharePoint.WebPartPages.AggregationWebPart
              Microsoft.SharePoint.WebPartPages.BaseXsltDataWebPart
              Microsoft.SharePoint.WebPartPages.BlogAdminWebPart
              Microsoft.SharePoint.WebPartPages.BlogLinksWebPart
              Microsoft.SharePoint.WebPartPages.BlogMonthQuickLaunch
              Microsoft.SharePoint.WebPartPages.ChartViewWebPart
              Microsoft.SharePoint.WebPartPages.ContentEditorWebPart
              Microsoft.SharePoint.WebPartPages.ImageWebPart
              Microsoft.SharePoint.WebPartPages.ListFormWebPart
              Microsoft.SharePoint.WebPartPages.ListViewWebPart
              Microsoft.SharePoint.WebPartPages.MembersWebPart
              Microsoft.SharePoint.WebPartPages.PageViewerWebPart
              Microsoft.SharePoint.WebPartPages.SimpleFormWebPart
              Microsoft.SharePoint.WebPartPages.SPTimelineWebPart
              Microsoft.SharePoint.WebPartPages.TilesViewWebPart
              Microsoft.SharePoint.WebPartPages.TitleBarWebPart
              Microsoft.SharePoint.WebPartPages.WikiContentWebpart
              Microsoft.SharePoint.WebPartPages.XmlWebPart