EditorPart.SyncChanges Méthode

Définition

Récupère les valeurs de propriétés d'un contrôle WebPart pour son contrôle EditorPart associé.

public:
 abstract void SyncChanges();
public abstract void SyncChanges ();
abstract member SyncChanges : unit -> unit
Public MustOverride Sub SyncChanges ()

Exemples

L’exemple de code suivant montre comment implémenter la SyncChanges méthode dans un contrôle personnalisé EditorPart . Pour obtenir le code complet requis pour exécuter l’exemple, consultez la section Exemple de la vue d’ensemble de la EditorPart classe.

La première partie de l’exemple de code illustre l’implémentation de la SyncChanges méthode dans la classe personnalisée EditorPart nommée TextDisplayEditorPart. Cette méthode obtient une référence au contrôle associé à TextDisplayWebPart l’aide de la WebPartToEdit propriété . Il obtient ensuite la valeur de la TextDisplayWebPart.FontStyle propriété et met à jour l’élément sélectionné dans le contrôle de liste déroulante (référencé par la TextDisplayEditorPart.PartContentFontStyle propriété) sur le contrôle personnalisé EditorPart .

public override void SyncChanges()
{
  TextDisplayWebPart part = 
    (TextDisplayWebPart)WebPartToEdit;
  String currentStyle = part.FontStyle;

  // Select the current font style in the drop-down control.
  foreach (ListItem item in PartContentFontStyle.Items)
  {
    if (item.Value == currentStyle)
    {
      item.Selected = true;
      break;
    }
  }
}
Public Overrides Sub SyncChanges()
  Dim part As TextDisplayWebPart = CType(WebPartToEdit, _
                                         TextDisplayWebPart)
  Dim currentStyle As String = part.FontStyle

  ' Select the current font style in the drop-down control.
  Dim item As ListItem
  For Each item In PartContentFontStyle.Items
    If item.Value = currentStyle Then
      item.Selected = True
      Exit For
    End If
  Next item

End Sub

La deuxième partie de l’exemple de code montre comment le contrôle associé WebPart , TextDisplayWebPart, crée une collection de contrôles associés EditorPart (dans ce cas, il n’y a qu’un EditorPart seul contrôle nommé TextDisplayEditorPart dans la collection) dans son implémentation de la CreateEditorParts méthode. Cette méthode est exécutée lorsque le TextDisplayWebPart contrôle passe en mode édition.

public override EditorPartCollection CreateEditorParts()
{
  ArrayList editorArray = new ArrayList();
  TextDisplayEditorPart edPart = new TextDisplayEditorPart();
  edPart.ID = this.ID + "_editorPart1";
  editorArray.Add(edPart);
  EditorPartCollection editorParts = 
    new EditorPartCollection(editorArray);
  return editorParts;
}

public override object WebBrowsableObject
{
  get { return this; }
}
Public Overrides Function CreateEditorParts() _
                            As EditorPartCollection
  Dim editorArray As New ArrayList()
  Dim edPart as New TextDisplayEditorPart()
  edPart.ID = Me.ID & "_editorPart1"
  editorArray.Add(edPart)
  Dim editorParts As New EditorPartCollection(editorArray)
  Return editorParts

End Function

Public Overrides ReadOnly Property WebBrowsableObject() _
                                    As Object
  Get
    Return Me
  End Get
End Property

Remarques

La SyncChanges méthode est une méthode critique sur un EditorPart contrôle. Elle est définie comme une méthode abstraite dans la EditorPart classe et doit être implémentée par des contrôles hérités. L’objectif de la méthode est de récupérer les valeurs actuelles du WebPart contrôle référencé dans la WebPartToEdit propriété et de mettre à jour les champs du EditorPart contrôle avec ces valeurs afin qu’un utilisateur puisse les modifier.

La SyncChanges méthode est appelée chaque fois que les valeurs du contrôle associé WebPart peuvent avoir changé. Pour chaque EditorPart contrôle, la EditorZoneBase zone qui contient le contrôle appelle la SyncChanges méthode immédiatement après l’appel de la ApplyChanges méthode, afin que les valeurs du EditorPart contrôle soient toujours synchronisées avec les valeurs du contrôle associé WebPart . Un autre cas où la SyncChanges méthode est appelée est lorsqu’un WebPart contrôle passe en mode édition.

Notes

La SyncChanges méthode n’est pas appelée après la ApplyChanges méthode si cette méthode retourne false, car dans ce cas, une erreur s’est produite.

Notes pour les responsables de l’implémentation

Une classe qui dérive de la EditorPart classe doit implémenter la SyncChanges() méthode . La méthode implémentée obtient une référence au contrôle associé à l’aide de la WebPartToEdit propriété , puis met à jour le EditorPart contrôle avec les valeurs de propriété du contrôle associé WebPart .

S’applique à

Voir aussi