イベントハンドラを使用してコンポーネントのフィールド値をオーバーライドするにはどうすればよいですか? 以下のコード スニペットがある場合、コンポーネントの保存中にエラーは発生しません。ただし、イベント ハンドラによって行われたコンテンツの変更は、コンポーネントには反映されません。単一の値フィールド「サイズ」には、値として「blabla ...」が含まれていると思います。
// Call to Subscribe the events
EventSystem.Subscribe<Component, SaveEventArgs>(ComponentSaveInitiatedHandler,
EventPhases.Initiated);
private void ComponentSaveInitiatedHandler(Component component,
SaveEventArgs args, EventPhases phases)
{
if (component.Schema.Title == "XYZ")
{
ItemFields Fields = new ItemFields(component.Content, component.Schema);
SingleLineTextField textField = (SingleLineTextField)Fields["size"];
textField.Value = "blabla...";
}
}