Sdílet prostřednictvím


EditorPart.SyncChanges Metoda

Definice

Načte hodnoty vlastností z WebPart ovládacího prvku pro přidružený EditorPart ovládací prvek.

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

Příklady

Následující příklad kódu ukazuje, jak implementovat metodu SyncChanges ve vlastním EditorPart ovládacím prvku. Úplný kód potřebný ke spuštění příkladu najdete v části Příklad přehledu EditorPart třídy.

První část příkladu kódu ukazuje implementaci SyncChanges metody ve vlastní EditorPart třídě s názvem TextDisplayEditorPart. Tato metoda získá odkaz na přidružený TextDisplayWebPart ovládací prvek pomocí WebPartToEdit vlastnosti. Potom získá hodnotu TextDisplayWebPart.FontStyle vlastnosti a aktualizuje, která položka je vybrána v ovládacím prvku rozevíracího seznamu (odkazovaná TextDisplayEditorPart.PartContentFontStyle vlastností) na vlastním EditorPart ovládacím prvku.

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

Druhá část příkladu kódu ukazuje, jak přidružený WebPart ovládací prvek , TextDisplayWebPartvytvoří kolekci přidružených EditorPart ovládacích prvků (v tomto případě existuje pouze jeden EditorPart ovládací prvek pojmenovaný TextDisplayEditorPart v kolekci) v jeho implementaci CreateEditorParts metody. Tato metoda se spustí, když TextDisplayWebPart ovládací prvek přejde do režimu úprav.

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

Poznámky

Metoda SyncChanges je kritická metoda EditorPart ovládacího prvku. Je definována jako abstraktní metoda ve EditorPart třídě a musí být implementována zděděnými ovládacími prvky. Účelem metody je načíst aktuální hodnoty z WebPart ovládacího prvku odkazovaného ve WebPartToEdit vlastnosti a aktualizovat pole v ovládacím EditorPart prvku s těmito hodnotami, aby je uživatel mohl upravovat.

Metoda SyncChanges se volá vždy, když se mohly změnit hodnoty v přidruženém WebPart ovládacím prvku. Pro každý EditorPart ovládací prvek zóna, EditorZoneBase která obsahuje ovládací prvek volá metodu SyncChanges ihned po volání ApplyChanges metody, aby hodnoty v ovládacím EditorPart prvku byly vždy synchronizovány s hodnotami v přidruženém WebPart ovládacím prvku. Dalším případem SyncChanges , kdy je volána metoda, je, když WebPart ovládací prvek vstupuje do režimu úprav.

Poznámka:

Metoda SyncChanges není volána za metodou ApplyChanges , pokud tato metoda vrátí false, protože v takovém případě došlo k chybě.

Poznámky pro implementátory

Třída, která je odvozena z EditorPart třídy musí implementovat metodu SyncChanges() . Implementovaná metoda získá odkaz na přidružený ovládací prvek pomocí WebPartToEdit vlastnosti a poté aktualizuje EditorPart ovládací prvek s hodnotami vlastnosti z přidruženého WebPart ovládacího prvku.

Platí pro

Viz také