コード例 #1
0
        /// <summary>
        /// 获取设计器的预览框
        /// </summary>
        //public WebBrowser WebBrowser
        //{
        //    get { return previewBrowser; }
        //}

        #endregion

        #region 构造函数与Form的初始化

        /// <summary>
        /// 页面片设计器
        /// </summary>
        public MdiSnipDesignerForm(string tmpltID, string snipID)
        {
            ///赋初值
            ///
            _snipId  = snipID;
            _tmpltID = tmpltID;

            InitializeComponent();

            ///从所属的模板窗体里获取当前页面片的XmlElement。
            _ownerTmpltForm = Service.Workbench.GetWorkDocumentById(tmpltID, WorkDocumentType.TmpltDesigner) as MdiTmpltDesignForm;
            if (_ownerTmpltForm == null)
            {
                Debug.Fail("此页面片对应的模板窗口不存在。");
                return;
            }

            ///通过所属的模板窗口和传入的SnipID,获得SnipXmlElement
            SnipElement = _ownerTmpltForm.TmpltDoc.GetSnipElementById(_snipId);

            ///通过SnipXmlElement创建DesignerPanel(DesignerPanel构造函数将创建SnipPageDesigner)
            this._designerPanel = new DesignerPanel(_ownerTmpltForm.TmpltDoc.HasAutoKeyWordsSequenceType);

            this._designerPanel.BackColor = SoftwareOption.SnipDesigner.FormBackColor;// System.Drawing.Color.DarkGray;
            this._designerPanel.Dock      = System.Windows.Forms.DockStyle.Fill;
            this._designerPanel.Location  = new System.Drawing.Point(0, 0);
            this._designerPanel.Name      = "workPanel";
            this._designerPanel.Size      = new System.Drawing.Size(747, 528);
            this._designerPanel.TabIndex  = 0;
            this._designerPanel.Text      = "designerPanel1";

            this.SnipPageDesigner.MouseDoubleClick     += new MouseEventHandler(SnipPageDesigner_MouseDoubleClick);
            this.SnipPageDesigner.SelectedPartsChanged += new EventHandler(SnipPageDesigner_SelectedPartsChanged);

            this.Controls.Add(this._designerPanel);

            ///导航栏的初始化
            this.BottomNavigation                = new NavigationStrip();
            this.BottomNavigation.Dock           = DockStyle.Bottom;
            this.BottomNavigation.NavigateTarget = this.SnipPageDesigner;
            this.Controls.Add(this.BottomNavigation);

            this.ShowIcon = true;
            this.Icon     = Icon.FromHandle(ResourceService.GetResourceImage("tree.img.SnipPage2").GetHicon());

            _timer.Interval = 100;
            _timer.Tick    += new EventHandler(_timer_Tick);

            SnipPageDesigner.Load(SnipElement);
            Text = SnipPageDesigner.Text;
            SnipPageDesigner.DesignerReseted += new EventHandler(SnipPageDesigner_DesignerReseted);
            SnipPageDesigner.PartsLayouted   += new EventHandler(SnipPageDesigner_PartsLayouted);
            this.SizeChanged += new EventHandler(MdiSnipDesignerForm_SizeChanged);

            // add by fenggy 2006-06-13 增加处理PART定位的函数
            SdsiteXmlDocument.OrientationPart += new EventHandler <EventArgs <string[]> >(SdsiteXmlDocument_OrientationPart);

            // add by fenggy 2006-06-17 更改FORM的TEXT
            SdsiteXmlDocument.SnipDesignerFormTextChange += new EventHandler <EventArgs <string[]> >(SdsiteXmlDocument_SnipDesignerFormTextChange);
        }
コード例 #2
0
        void SnipItem_DoubleClick(object sender, TreeNodeMouseClickEventArgs e)
        {
            MdiSnipDesignerForm _activeMdiForm = WorkbenchForm.MainForm.ActiveView as MdiSnipDesignerForm;

            switch (e.Node.Name)
            {
            case "_insertTextItem":
                if (_activeMdiForm != null)
                {
                    _activeMdiForm.SnipPageDesigner.AddSnipPart(SnipPartType.Static);
                }
                break;

            case "_insertListItem":
                if (_activeMdiForm != null)
                {
                    _activeMdiForm.SnipPageDesigner.AddSnipPart(SnipPartType.List);
                }
                break;

            case "_insertNavigationItem":
                if (_activeMdiForm != null)
                {
                    // _activeMdiForm.SnipPageDesigner.AddSnipPart(SnipPartType.NavigationBox);
                }
                break;

            case "_insertBoxItem":
                if (_activeMdiForm != null)
                {
                    _activeMdiForm.SnipPageDesigner.AddSnipPart(SnipPartType.Box);
                }
                break;

            case "_insertChannelItem":
                if (_activeMdiForm != null)
                {
                    _activeMdiForm.SnipPageDesigner.AddSnipPart(SnipPartType.Navigation);
                }
                break;

            case "_insertPathItem":
                if (_activeMdiForm != null)
                {
                    _activeMdiForm.SnipPageDesigner.AddSnipPart(SnipPartType.Path);
                }
                break;

            case "cssSetup":
                MdiTmpltDesignForm _tmpltForm = WorkbenchForm.MainForm.ActiveView as MdiTmpltDesignForm;
                if (_tmpltForm != null)
                {
                    ((TmpltDrawPanel)_tmpltForm.TmpltDesign.DrawPanel).CurRectProperty_Click(null, EventArgs.Empty);
                }
                break;

            default:
                //TODO:需要修改,luakn,2008年2月20日13时44分
                if (_activeMdiForm != null)
                {
                    if (e.Node.Tag is SnipPartAttribute)       //判断是否为Attribute型的Part
                    {
                        _activeMdiForm.SnipPageDesigner.AddSnipPart(SnipPartType.Attribute, (SnipPartAttribute)e.Node.Tag);
                    }
                }
                break;
            }
        }
コード例 #3
0
        Form OpenWorkDocument(WorkDocumentType type, string id, string ownerId)
        {
            Debug.Assert(!string.IsNullOrEmpty(id));

            Form returnForm = null;

            switch (type)
            {
            case WorkDocumentType.TmpltDesigner:
            {
                MdiTmpltDesignForm form = new MdiTmpltDesignForm(id);
                form.Owner = WorkbenchForm.MainForm;
                form.Show(MainDockPanel, DockState.Document);
                returnForm = form;
                break;
            }

            case WorkDocumentType.HomePage:
            {
                MdiHomePageDesignForm form = new MdiHomePageDesignForm(id);
                form.Owner = WorkbenchForm.MainForm;
                form.Show(MainDockPanel, DockState.Document);
                returnForm = form;
                break;
            }

            case WorkDocumentType.HtmlDesigner:
            {
                MdiHtmlDesignForm form = new MdiHtmlDesignForm(id);
                form.Owner = WorkbenchForm.MainForm;
                form.Show(MainDockPanel, DockState.Document);
                returnForm = form;
                break;
            }

            case WorkDocumentType.SnipDesigner:
            {
                MdiSnipDesignerForm form = new MdiSnipDesignerForm(ownerId, id);
                form.Owner = WorkbenchForm.MainForm;
                form.Show(MainDockPanel, DockState.Document);
                returnForm = form;
                break;
            }

            case WorkDocumentType.WebBrowser:
            {
                returnForm = NavigationUrl(id);
                break;
            }

            //TODO:管理页面合一 Lisuye
            case WorkDocumentType.Manager:
            {
                MdiBaseListViewForm form = new MdiBaseListViewForm(id);
                form.Owner = WorkbenchForm.MainForm;
                form.Show(WorkbenchForm.MainForm.MainDockPanel, DockState.Document);
                returnForm = form;
                break;
            }

            case WorkDocumentType.Edit:
            {
                MdiBaseEditViewForm form = new MdiBaseEditViewForm(id);
                form.Owner = WorkbenchForm.MainForm;
                form.Show(WorkbenchForm.MainForm.MainDockPanel, DockState.Document);
                returnForm = form;
                break;
            }

            case WorkDocumentType.StartupPage:
            {
                MdiWelComePageForm form = new MdiWelComePageForm();
                form.Show(MainDockPanel, DockState.Document);
                returnForm = form;
                break;
            }

            case WorkDocumentType.SiteProperty:
            {
                SitePropertyForm form = new SitePropertyForm(id);
                form.Show(MainDockPanel, DockState.Document);
                returnForm = form;
                break;
            }

            default:
                break;
            }
            return(returnForm);
        }