EditorPart.SyncChanges Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene los valores de propiedad de un control WebPart correspondientes a su control EditorPart asociado.
public:
abstract void SyncChanges();
public abstract void SyncChanges ();
abstract member SyncChanges : unit -> unit
Public MustOverride Sub SyncChanges ()
Ejemplos
En el ejemplo de código siguiente se muestra cómo implementar el SyncChanges método en un control personalizado EditorPart . Para obtener el código completo necesario para ejecutar el ejemplo, consulte la sección Ejemplo de la información general de la EditorPart clase.
La primera parte del ejemplo de código muestra la implementación del SyncChanges método en la clase personalizada EditorPart denominada TextDisplayEditorPart
. Este método obtiene una referencia al control asociado TextDisplayWebPart
mediante la WebPartToEdit propiedad . A continuación, obtiene el valor de la TextDisplayWebPart.FontStyle
propiedad y actualiza qué elemento está seleccionado en el control de lista desplegable (al que hace referencia la TextDisplayEditorPart.PartContentFontStyle
propiedad ) en el control personalizado 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 segunda parte del ejemplo de código muestra cómo el control asociado WebPart , TextDisplayWebPart
, crea una colección de controles asociados EditorPart (en este caso, solo hay un EditorPart control denominado TextDisplayEditorPart
en la colección) en su implementación del CreateEditorParts método . Este método se ejecuta cuando el TextDisplayWebPart
control entra en modo de edición.
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
Comentarios
El SyncChanges método es un método crítico en un EditorPart control . Se define como un método abstracto en la EditorPart clase y debe implementarse mediante controles heredados. El propósito del método es recuperar los valores actuales del WebPart control al que se hace referencia en la WebPartToEdit propiedad y actualizar los campos del EditorPart control con esos valores para que un usuario pueda editarlos.
Se SyncChanges llama al método cada vez que los valores del control asociado WebPart podrían haber cambiado. Para cada EditorPart control, la EditorZoneBase zona que contiene el control llama al SyncChanges método inmediatamente después de llamar al ApplyChanges método , de modo que los valores del EditorPart control siempre se sincronizan con los valores del control asociado WebPart . Otro caso en el que se llama al SyncChanges método es cuando un WebPart control entra en modo de edición.
Nota
No SyncChanges se llama al método después del ApplyChanges método si ese método devuelve false
, porque en ese caso se ha producido un error.
Notas a los implementadores
Una clase que deriva de la EditorPart clase debe implementar el SyncChanges() método . El método implementado obtiene una referencia al control asociado mediante la WebPartToEdit propiedad y, a continuación, actualiza el EditorPart control con los valores de propiedad del control asociado WebPart .