EditorPart.SyncChanges メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
WebPart コントロールから、それに関連付けられている EditorPart コントロール用に、プロパティ値を取得します。
public:
abstract void SyncChanges();
public abstract void SyncChanges ();
abstract member SyncChanges : unit -> unit
Public MustOverride Sub SyncChanges ()
例
次のコード例では、カスタム EditorPart コントロールに メソッドをSyncChanges実装する方法を示します。 この例を実行するために必要な完全なコードについては、クラスの概要の「例」セクションを EditorPart 参照してください。
コード例の最初の部分では、 という名前TextDisplayEditorPart
のカスタム EditorPart クラスでの メソッドのSyncChanges実装を示します。 このメソッドは、 プロパティを使用して、関連付けられた TextDisplayWebPart
コントロールへの参照を WebPartToEdit 取得します。 次に、 プロパティの値をTextDisplayWebPart.FontStyle
取得し、カスタム EditorPart コントロールのドロップダウン リスト コントロール (プロパティによってTextDisplayEditorPart.PartContentFontStyle
参照) で選択されている項目を更新します。
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
コード例の 2 番目の部分では、 メソッドの実装で、TextDisplayWebPart
関連付けられたEditorPartWebPartコントロールのコレクション (この例では、コレクション内にという名前TextDisplayEditorPart
のコントロールが 1 つだけEditorPart) を作成する方法をCreateEditorParts示します。 このメソッドは、コントロールが TextDisplayWebPart
編集モードになったときに実行されます。
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
注釈
メソッドは SyncChanges 、コントロールの EditorPart 重要なメソッドです。 これは クラスの EditorPart 抽象メソッドとして定義され、継承されたコントロールによって実装される必要があります。 メソッドの目的は、 プロパティで参照されているコントロールから現在の値をWebPartWebPartToEdit取得し、ユーザーが編集できるようにコントロール内のEditorPartフィールドをそれらの値で更新することです。
メソッドは SyncChanges 、関連付けられた WebPart コントロールの値が変更されるたびに呼び出されます。 コントロールをEditorZoneBase含むゾーンではEditorPart、 メソッドを呼び出した直後に メソッドが呼び出SyncChangesApplyChangesされるため、コントロール内のEditorPart値は常に関連付けられたWebPartコントロールの値と同期されます。 メソッドが SyncChanges 呼び出されるもう 1 つのケースは、 WebPart コントロールが編集モードになったときです。
注意
SyncChangesメソッドが を返false
した場合、メソッドのApplyChanges後に メソッドは呼び出されません。その場合、エラーが発生したためです。
注意 (実装者)
クラスから派生するクラスは、 EditorPart メソッドを実装する SyncChanges() 必要があります。 実装されたメソッドは、 プロパティを使用して関連付けられたコントロールへの参照をWebPartToEdit取得し、関連付けられたWebPartコントロールのプロパティ値を使用してコントロールを更新EditorPartします。
適用対象
こちらもご覧ください
.NET