/// <summary> /// Gets the first visible text field as title field /// </summary> /// <returns></returns> public ContentField GetDefaultTitleField() { ContentField firstField = null; var tt = (int)ContentFieldTypes.Text; if (this.FieldRefs.Count == 0) { firstField = Parent.Fields.FirstOrDefault(f => f.FieldType == tt && !f.IsHidden); } else { var vf = FieldRefs.FirstOrDefault(f => f.FieldType == tt && !f.IsHidden); if (vf != null) { return(Parent.Fields[vf.Name]); } } return(firstField); }
protected override void SaveTo(XElement element) { XNamespace ns = ContentList.DefaultNamespace; element.Add(new XAttribute("type", "Computed")); if (this.DefaultValue != null) { element.Add(new XAttribute(DEFAULT, this.DefaultValue.ToString())); } if (FieldRefs != null && FieldRefs.Count() > 0) { foreach (var field in FieldRefs) { element.Add(new XElement(ns + FIELDREF, new XAttribute(NAME, field))); } } if (!string.IsNullOrEmpty(DispPattern)) { element.Add(XElement.Parse(DispPattern)); } }
/// <summary> /// Set ordered view fields. /// </summary> /// <param name="fields">The ordered field names.</param> public void SetViewFields(params string[] fields) { var tmpFields = FieldRefs.ToList(); this.FieldRefs.Clear(); foreach (var field in fields) { var fieldRef = tmpFields.FirstOrDefault(e => e.Name.Equals(field)); if (fieldRef == null) { fieldRef = new ContentFieldRef(this, this.Parent.Fields[field]); } this.FieldRefs.Add(fieldRef); } this.Model.FieldRefsXml = FieldRefs.Element().OuterXml(); this.FieldRefsXml = this.Model.FieldRefsXml; Context.SaveChanges(); this.Refresh(); }