Ejemplo n.º 1
0
        /// <summary>
        /// Handles the Init event
        /// </summary>
        /// <param name="e">An <see cref="T:System.EventArgs"/> object that contains the event data.</param>
        protected override void OnInit(EventArgs e)
        {
            base.OnInit(e);

            this.Page.EnableEventValidation = false;

            this.InitEditModeList();

            this.InitUseValueFromList();

            if (this.Info.IsEmpty && string.IsNullOrEmpty(this.Page.Request.Form[this.ActiveField.Name]))
            {
                this.InitFieldsList();

                this.InitPreviousActionList();

                this.FillEntityList();

                this.Info = XCrmEntry.Parse(this.FixXmlFromCrm(this.GetValueByKey("CrmEntityInfo", string.Empty)));

                if (this.EntityList != null)
                {
                    this.EntityList.Select(this.Info.EntityName);
                }

                if (this.UpdateFieldsIfContainValue != null)
                {
                    this.UpdateFieldsIfContainValue.Checked = this.Info.OverwriteNotEmptyField;
                }

                this.FillAudit(this.AuditField, this.Info.Audit);

                this.SaveInfo(null);
                this.Info.Merge(this.Metadata);

                if (this.UpdateFieldsIfContainValue != null)
                {
                    this.UpdateFieldsIfContainValue.Checked = this.Info.OverwriteNotEmptyField;
                }
            }
            else
            {
                this.SettingsBorder.Visible = false;
            }

            this.FieldsTree.LoadFromCrmEntry(this.Info);
            this.FieldsTree.ClientEvents.NodeSelect = new ClientEvent("FieldsTree_onNodeSelect");
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Loads from CRM entry.
        /// </summary>
        /// <param name="treeview">The treeview.</param>
        /// <param name="entry">The entry.</param>
        internal static void LoadFromCrmEntry(this TreeView treeview, XCrmEntry entry)
        {
            treeview.Nodes.Clear();

            var root = treeview.GetRequiredRootNode();

            treeview.Nodes.Add(root);

            root.AddNodes(entry.RequiredFields);
            root.Nodes.Sort("Text", false);

            var entries = entry.AdditionalFields;

            if (entries.Count() > 0)
            {
                root = treeview.GetAdditionalRootNode();
                treeview.Nodes.Add(root);
                root.AddNodes(entries);
            }
        }