Sdílet prostřednictvím


EditorPart.SyncChanges Metoda

Definice

Načte hodnoty vlastností z WebPart ovládacího prvku pro jeho 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 (na který TextDisplayEditorPart.PartContentFontStyle odkazuje vlastnost) ve 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 , vytvoří kolekci přidružených EditorPart ovládacích prvků (v tomto případě je v kolekci pouze jeden EditorPart ovládací prvek s názvemTextDisplayEditorPart) v implementaci CreateEditorPartsTextDisplayWebPartmetody . 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 kritickou metodou EditorPart ovládacího prvku. Je definován 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, na který WebPartToEdit odkazuje vlastnost , a aktualizovat pole v ovládacím EditorPart prvku těmito hodnotami, aby je uživatel mohl upravovat.

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

Poznámka

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

Poznámky pro implementátory

Třída odvozená 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 hodnotami vlastností z přidruženého WebPart ovládacího prvku.

Platí pro

Viz také