自定义编辑器未将参数传递给Custom SaveAction

时间:2015-06-08 12:05:45

标签: xaml sitecore

我有一个困扰我几个小时的问题!

我已经创建了自定义保存操作和自定义编辑器:按照本教程:http://toadcode.blogspot.dk/2013/03/create-web-forms-for-marketers-custom.html

在自定义编辑器字段的后端代码的OnOK方法中,我有:

protected override void OnOK(object sender, EventArgs args)
{

    SheerResponse.SetDialogValue(
        ParametersUtil.NameValueCollectionToXml(new NameValueCollection() 
    { 
        {"TargetLogId", "SomeID" }
    }));
    base.OnOK(sender, args);

}

并在我的保存操作中:

    public string TargetLogId { get; set; }        

    public override void Execute(Sitecore.Data.ID formid, Sitecore.Form.Core.Client.Data.Submit.AdaptedResultList fields, params object[] data)
    {
        /*
        code
        */
    }

问题是TargetLogId在我的保存操作中始终为空,而不是预期的“SomeID”值。我做错了什么?

编辑: XAML:

   <?xml version="1.0" encoding="utf-8" ?>
     <control xmlns="http://schemas.sitecore.net/Visual-Studio-Intellisense"
     xmlns:def="Definition">
     <SaveFormToCsvSettings>
      <FormDialog ID="Dialog" Icon="Applications/32x32/gear.png">
      <CodeBeside     Type="xxx.yyy.SitecoreDialogs.ChooseTargetItem,xxx.yyy.SitecoreDialogs"/>



      <Combobox ID="AvailableTargetLogs"></Combobox>

    </FormDialog>
  </SaveFormToCsvSettings>
</control>

在自定义保存操作项中,我指向Save Actions类和程序集。

当我在保存操作上单击编辑时,编辑器显示正常..并且触发了SheerResponse.SetDialogValue方法。这真的是正确的方法吗?

0 个答案:

没有答案