Bagikan melalui


EditorPart.SyncChanges Metode

Definisi

Mengambil nilai properti dari WebPart kontrol untuk kontrol terkait EditorPart .

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

Contoh

Contoh kode berikut menunjukkan cara menerapkan SyncChanges metode dalam kontrol kustom EditorPart . Untuk kode lengkap yang diperlukan untuk menjalankan contoh, lihat bagian Contoh dari EditorPart gambaran umum kelas.

Bagian pertama dari contoh kode menunjukkan implementasi SyncChanges metode di kelas kustom EditorPart bernama TextDisplayEditorPart. Metode ini mendapatkan referensi ke kontrol terkait TextDisplayWebPart menggunakan WebPartToEdit properti . Kemudian mendapatkan nilai TextDisplayWebPart.FontStyle properti , dan memperbarui item mana yang dipilih dalam kontrol daftar drop-down (dirujuk oleh TextDisplayEditorPart.PartContentFontStyle properti ) pada kontrol kustom 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

Bagian kedua dari contoh kode menunjukkan bagaimana kontrol terkait WebPart , TextDisplayWebPart, membuat kumpulan kontrol terkait EditorPart (dalam hal ini, hanya ada satu EditorPart kontrol yang dinamai TextDisplayEditorPart dalam koleksi) dalam implementasi CreateEditorParts metode . Metode ini dijalankan ketika TextDisplayWebPart kontrol memasuki mode edit.

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

Keterangan

Metode SyncChanges ini adalah metode penting pada EditorPart kontrol. Ini didefinisikan sebagai metode abstrak di EditorPart kelas , dan harus diimplementasikan oleh kontrol yang diwariskan. Tujuan metode ini adalah untuk mengambil nilai saat ini dari kontrol yang WebPart dirujuk di WebPartToEdit properti , dan memperbarui bidang dalam kontrol dengan nilai tersebut EditorPart sehingga pengguna dapat mengeditnya.

Metode SyncChanges ini dipanggil setiap kali nilai dalam kontrol terkait WebPart mungkin telah berubah. Untuk setiap EditorPart kontrol, EditorZoneBase zona yang berisi kontrol memanggil metode segera setelah memanggil ApplyChanges metode , sehingga nilai dalam kontrol selalu disinkronkan SyncChangesEditorPart dengan nilai dalam kontrol terkaitWebPart. Kasus lain di mana metode dipanggil SyncChanges adalah ketika WebPart kontrol memasuki mode edit.

Catatan

Metode SyncChanges ini tidak dipanggil setelah metode jika metode tersebut ApplyChanges mengembalikan false, karena dalam hal ini, terjadi kesalahan.

Catatan Bagi Implementer

Kelas yang berasal dari EditorPart kelas harus menerapkan SyncChanges() metode . Metode yang diimplementasikan mendapatkan referensi ke kontrol terkait menggunakan WebPartToEdit properti , lalu memperbarui EditorPart kontrol dengan nilai properti dari kontrol terkait WebPart .

Berlaku untuk

Lihat juga