C# 在BaseFieldControl或RichTextField中设置值

C# 在BaseFieldControl或RichTextField中设置值,c#,visual-studio,sharepoint,sharepoint-2010,C#,Visual Studio,Sharepoint,Sharepoint 2010,我希望在我自己的字段类型中使用编程设置值。所以我重写了FieldRenderingControl方法,这是在单击sharepoint列表中的元素时调用的 我的代码: public override Microsoft.SharePoint.WebControls.BaseFieldControl FieldRenderingControl { get { BaseFieldControl fakeF

我希望在我自己的字段类型中使用编程设置值。所以我重写了FieldRenderingControl方法,这是在单击sharepoint列表中的元素时调用的

我的代码:

 public override Microsoft.SharePoint.WebControls.BaseFieldControl FieldRenderingControl
        {
            get
            {
                BaseFieldControl fakeFieldControl = base.FieldRenderingControl;

                RichTextField rtf = new RichTextField();
                rtf.ID = "MultilineRichText";
                rtf.ListId = fakeFieldControl.ListId;// list.ID;
                rtf.ItemId = fakeFieldControl.ItemId;// item.ID;
                rtf.FieldName = "MultilineRichText";
                rtf.ControlMode = SPControlMode.Display;
                rtf.Text = "test rich text";
                rtf.Value = "test rich text value";

                rtf.ItemFieldValue = "item field value";
                rtf.ListItemFieldValue = "list item field value";



                return rtf;
结果:控制模式始终处于显示模式,工作正常。但列值始终为空


有什么帮助吗?我不知道

如果我没记错的话,您必须在设置ControlMode=SPControlMode.Display之前设置该值

编辑:我刚看到那是一篇老文章。。。希望你能找到答案: