EditorPart.SyncChanges Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Recupera os valores de propriedade de um controle WebPart para o controle EditorPart associado.
public:
abstract void SyncChanges();
public abstract void SyncChanges ();
abstract member SyncChanges : unit -> unit
Public MustOverride Sub SyncChanges ()
Exemplos
O exemplo de código a seguir demonstra como implementar o SyncChanges método em um controle personalizado EditorPart . Para obter o código completo necessário para executar o exemplo, consulte a seção Exemplo da visão geral da EditorPart classe.
A primeira parte do exemplo de código demonstra a implementação do SyncChanges método na classe personalizada EditorPart chamada TextDisplayEditorPart
. Esse método obtém uma referência ao controle associado TextDisplayWebPart
usando a WebPartToEdit propriedade . Em seguida, ele obtém o valor da TextDisplayWebPart.FontStyle
propriedade e atualiza qual item é selecionado no controle de lista suspensa (referenciado pela TextDisplayEditorPart.PartContentFontStyle
propriedade) no controle 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
A segunda parte do exemplo de código mostra como o controle associado WebPart , TextDisplayWebPart
, cria uma coleção de controles associados EditorPart (nesse caso, há apenas um EditorPart controle chamado TextDisplayEditorPart
na coleção) em sua implementação do CreateEditorParts método . Esse método é executado quando o TextDisplayWebPart
controle entra no modo de edição.
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
Comentários
O SyncChanges método é um método crítico em um EditorPart controle . Ele é definido como um método abstrato na EditorPart classe e deve ser implementado por controles herdados. A finalidade do método é recuperar os valores atuais do WebPart controle referenciado na WebPartToEdit propriedade e atualizar os campos no EditorPart controle com esses valores para que um usuário possa editá-los.
O SyncChanges método é chamado sempre que os valores no controle associado WebPart podem ter sido alterados. Para cada EditorPart controle, a EditorZoneBase zona que contém o controle chama o SyncChanges método imediatamente após chamar o ApplyChanges método, para que os valores no EditorPart controle sejam sempre sincronizados com os valores no controle associado WebPart . Outro caso em que o SyncChanges método é chamado é quando um WebPart controle está entrando no modo de edição.
Observação
O SyncChanges método não será chamado após o ApplyChanges método se esse método retornar false
, porque nesse caso, ocorreu um erro.
Notas aos Implementadores
Uma classe derivada da EditorPart classe deve implementar o SyncChanges() método . O método implementado obtém uma referência ao controle associado usando a WebPartToEdit propriedade e atualiza o EditorPart controle com os valores de propriedade do controle associado WebPart .