Пример #1
0
        public override string GetEditableDesignerRegionContent(EditableDesignerRegion region)
        {
            IDesignerHost host = (IDesignerHost)Component.Site.GetService(typeof(IDesignerHost));

            if (host != null && region != null)
            {
                string[] parameters = region.Name.Split('_');

                if (parameters.Length == 2 && parameters[0] == "Body")
                {
                    int activeIndex = int.Parse(parameters[1]);

                    if (activeIndex >= 0)
                    {
                        ContentPanel panel = this.layout.Items[activeIndex] as ContentPanel;
                        if (panel != null)
                        {
                            ITemplate contentTemplate = panel.Body;

                            if (contentTemplate != null)
                            {
                                return(ControlPersister.PersistTemplate(contentTemplate, host));
                            }
                        }
                    }
                }
            }
            return(String.Empty);
        }
Пример #2
0
        public override void SetEditableDesignerRegionContent(EditableDesignerRegion region, string content)
        {
            if (content == null)
            {
                return;
            }
            IDesignerHost host = (IDesignerHost)Component.Site.GetService(typeof(IDesignerHost));

            if (host != null)
            {
                string[] parameters = region.Name.Split('_');

                if (parameters.Length == 2 && parameters[0] == "Body")
                {
                    int index = int.Parse(parameters[1]);
                    if (this.layout.Items.Count > 0)
                    {
                        ContentPanel panel = this.layout.Items[index] as ContentPanel;

                        if (panel != null)
                        {
                            ITemplate template = ControlParser.ParseTemplate(host, content);
                            panel.Body = template;
                        }
                        Tag.SetDirty(true);
                    }
                }
            }
        }
Пример #3
0
        public override void SetEditableDesignerRegionContent(EditableDesignerRegion region, string content)
        {
            if (content == null)
            {
                return;
            }

            IDesignerHost host = (IDesignerHost)Component.Site.GetService(typeof(IDesignerHost));

            if (host != null)
            {
                string[] parameters = region.Name.Split('_');

                if (parameters.Length == 3 && parameters[0] == "Body")
                {
                    BorderLayoutRegion layoutRegion = GetLayoutRegionByName(parameters[1]);
                    if (layoutRegion != null && layoutRegion.Items.Count > 0)
                    {
                        ContentPanel contentPanel = null;
                        int          activeIndex  = int.Parse(parameters[2]);

                        if (layoutRegion.Items[0] is Panel)
                        {
                            contentPanel = layoutRegion.Items[0] as Panel;
                        }
                        else if (layoutRegion.Items[0] is TabPanel)
                        {
                            TabPanel tabPanel = layoutRegion.Items[0] as TabPanel;

                            if (activeIndex < tabPanel.Tabs.Count)
                            {
                                contentPanel = tabPanel.Tabs[activeIndex];
                            }
                        }

                        if (contentPanel == null)
                        {
                            return;
                        }

                        ITemplate template = ControlParser.ParseTemplate(host, content);
                        TypeDescriptor.GetProperties(contentPanel)["Body"].SetValue(
                            contentPanel, template);
                        contentPanel.Body = template;

                        this.Tag.SetDirty(true);
                    }
                }
            }
        }
Пример #4
0
        public override string GetEditableDesignerRegionContent(EditableDesignerRegion region)
        {
            IDesignerHost host = (IDesignerHost)this.Component.Site.GetService(typeof(IDesignerHost));

            if (host != null)
            {
                string[] parameters = region.Name.Split('_');

                if (parameters.Length == 3 && parameters[0] == "Body")
                {
                    BorderLayoutRegion layoutRegion = this.GetLayoutRegionByName(parameters[1]);
                    if (layoutRegion != null && layoutRegion.Items.Count > 0)
                    {
                        int          activeIndex  = int.Parse(parameters[2]);
                        ContentPanel contentPanel = null;

                        if (layoutRegion.Items[0] is Panel)
                        {
                            contentPanel = layoutRegion.Items[0] as Panel;
                        }
                        else if (layoutRegion.Items[0] is TabPanel)
                        {
                            TabPanel tabPanel = layoutRegion.Items[0] as TabPanel;

                            if (activeIndex < tabPanel.Tabs.Count)
                            {
                                contentPanel = tabPanel.Tabs[activeIndex];
                            }
                        }

                        if (contentPanel == null)
                        {
                            return(string.Empty);
                        }

                        ITemplate contentTemplate = contentPanel.Body;
                        if (contentTemplate != null)
                        {
                            return(ControlPersister.PersistTemplate(contentTemplate, host));
                        }
                    }
                }
            }
            return(string.Empty);
        }
Пример #5
0
 protected void ScriptHelper(string name, ContentPanel target, object data)
 {
     this.ScriptHelper(name, string.Concat("={", target.ClientID, ".body}"), data);
 }
Пример #6
0
 public void Overwrite(ContentPanel target, object data)
 {
     this.ScriptHelper("overwrite", target, data);
 }
Пример #7
0
 public void InsertFirst(ContentPanel target, object data)
 {
     this.ScriptHelper("insertFirst", target, data);
 }
Пример #8
0
 public void InsertBefore(ContentPanel target, object data)
 {
     this.ScriptHelper("insertBefore", target, data);
 }
Пример #9
0
 public void Append(ContentPanel target, object data)
 {
     this.ScriptHelper("append", target, data);
 }