EditorPart.SyncChanges Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Recupera os valores das propriedades de um WebPart controlo para o seu controlo associado EditorPart .
public:
abstract void SyncChanges();
public abstract void SyncChanges();
abstract member SyncChanges : unit -> unit
Public MustOverride Sub SyncChanges ()
Exemplos
O seguinte exemplo de código demonstra como implementar o SyncChanges método num controlo personalizado EditorPart . Para o código completo necessário para executar o exemplo, consulte a secção Exemplo da EditorPart visão geral da classe.
A primeira parte do exemplo de código demonstra a implementação do SyncChanges método na classe personalizada EditorPart chamada TextDisplayEditorPart. Este método obtém uma referência ao controlo associado TextDisplayWebPart usando a WebPartToEdit propriedade. Depois obtém o valor da TextDisplayWebPart.FontStyle propriedade e atualizam qual o item selecionado no controlo da lista suspensa (referenciado pela TextDisplayEditorPart.PartContentFontStyle propriedade) no controlo 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 controlo associado WebPart , TextDisplayWebPart, cria uma coleção de controlos associados EditorPart (neste caso, há apenas um EditorPart controlo nomeado TextDisplayEditorPart na coleção) na sua implementação do CreateEditorParts método. Este método é executado quando o TextDisplayWebPart controlo entra em 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
Observações
O SyncChanges método é crítico num EditorPart controlo. É definido como um método abstrato na EditorPart classe e deve ser implementado por controlos herdados. O objetivo do método é recuperar os valores atuais do WebPart controlo referenciado na WebPartToEdit propriedade e atualizar os campos do EditorPart controlo com esses valores para que o utilizador possa editá-los.
O SyncChanges método é chamado sempre que os valores no controlo associado WebPart podem ter mudado. Para cada EditorPart controlo, a EditorZoneBase zona que contém o controlo chama o SyncChanges método imediatamente após a ApplyChanges chamada do método, de modo que os valores no EditorPart controlo estejam sempre sincronizados com os valores do controlo associado WebPart . Outro caso em que o SyncChanges método é chamado é quando um WebPart controlo entra em modo de edição.
Note
O SyncChanges método não é chamado após o ApplyChanges método se este devolver false, porque nesse caso, ocorreu um erro.
Notas para Implementadores
Uma classe que deriva da EditorPart classe deve implementar o SyncChanges() método. O método implementado recebe uma referência ao controlo associado usando a WebPartToEdit propriedade e depois atualiza o EditorPart controlo com os valores das propriedades do controlo associado WebPart .