EditorPart.SyncChanges Metodo

Definizione

Recupera i valori delle proprietà da un controllo WebPart per il controllo EditorPart associato.

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

Esempio

Nell'esempio di codice seguente viene illustrato come implementare il SyncChanges metodo in un controllo personalizzato EditorPart . Per il codice completo necessario per eseguire l'esempio, vedere la sezione Esempio della panoramica della EditorPart classe.

La prima parte dell'esempio di codice illustra l'implementazione del SyncChanges metodo nella classe personalizzata denominata EditorPartTextDisplayEditorPart. Questo metodo ottiene un riferimento al controllo associato TextDisplayWebPart usando la WebPartToEdit proprietà . Ottiene quindi il valore della TextDisplayWebPart.FontStyle proprietà e aggiorna l'elemento selezionato nel controllo elenco a discesa (a cui fa riferimento la TextDisplayEditorPart.PartContentFontStyle proprietà) nel controllo personalizzato 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 seconda parte dell'esempio di codice mostra come il controllo associato, , TextDisplayWebPartcrea una raccolta di controlli associati EditorPartWebPart (in questo caso, è presente un solo EditorPart controllo denominato TextDisplayEditorPart nella raccolta) nell'implementazione del CreateEditorParts metodo. Questo metodo viene eseguito quando il controllo entra in TextDisplayWebPart modalità di modifica.

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

Commenti

Il SyncChanges metodo è un metodo critico su un EditorPart controllo. Viene definito come metodo astratto nella EditorPart classe e deve essere implementato dai controlli ereditati. Lo scopo del metodo consiste nel recuperare i valori correnti dal WebPart controllo a cui fa riferimento nella WebPartToEdit proprietà e aggiornare i campi nel controllo con tali valori EditorPart in modo che un utente possa modificarli.

Il SyncChanges metodo viene chiamato ogni volta che i valori del controllo associato WebPart potrebbero essere stati modificati. Per ogni EditorPart controllo, la EditorZoneBase zona che contiene il controllo chiama il SyncChanges metodo immediatamente dopo aver chiamato il ApplyChanges metodo, in modo che i valori del EditorPart controllo siano sempre sincronizzati con i valori nel controllo associato WebPart . Un altro caso in cui viene chiamato il SyncChanges metodo è quando un WebPart controllo immette la modalità di modifica.

Nota

Il SyncChanges metodo non viene chiamato dopo il ApplyChanges metodo se il metodo restituisce false, perché in questo caso si è verificato un errore.

Note per gli implementatori

Una classe che deriva dalla EditorPart classe deve implementare il SyncChanges() metodo . Il metodo implementato ottiene un riferimento al controllo associato usando la WebPartToEdit proprietà e quindi aggiorna il EditorPart controllo con i valori delle proprietà dal controllo associato WebPart .

Si applica a

Vedi anche