Condividi tramite


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 utilizzando 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 WebPart , TextDisplayWebPart, crea una raccolta di controlli associati EditorPart (in questo caso, nella raccolta è presente un EditorPart solo 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 è recuperare i valori correnti dal WebPart controllo a cui si fa riferimento nella WebPartToEdit proprietà e aggiornare i campi nel EditorPart controllo con tali valori in modo che un utente possa modificarli.

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

Nota

Il SyncChanges metodo non viene chiamato dopo il metodo se il ApplyChanges metodo restituisce false, perché in tal 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 utilizzando la WebPartToEdit proprietà e quindi aggiorna il EditorPart controllo con i valori della proprietà dal controllo associato WebPart .

Si applica a

Vedi anche