示例#1
0
        /// <summary>
        /// 通过窗体得到ISearch和IMarkPosition
        /// </summary>
        /// <param name="form"></param>
        /// <param name="kv">Key是ISearch,Value是IMarkPosition</param>
        /// <returns>是否可以转换</returns>
        private bool GetFormDocument(BaseViewForm form, out KeyValuePair <ISearch, IMarkPosition> kv)
        {
            if (form == null)
            {
                kv = new KeyValuePair <ISearch, IMarkPosition>();
                return(false);
            }
            ISearch       _search;
            IMarkPosition _markPosition;

            switch (form.WorkDocumentType)
            {
                #region
            //case WorkDocumentType.TmpltDesigner:
            //    MdiTmpltDesignForm tmpltForm = (MdiTmpltDesignForm)form;
            //    _markPosition = tmpltForm;
            //    _search = Service.Sdsite.CurrentDocument.GetTmpltDocumentById(tmpltForm.TmpltID);
            //    break;
            case WorkDocumentType.HtmlDesigner:
                MdiHtmlDesignForm htmlForm = (MdiHtmlDesignForm)form;
                _markPosition = htmlForm;
                _search       = Service.Sdsite.CurrentDocument.GetPageDocumentById(htmlForm.PageId);
                break;

            //case WorkDocumentType.SnipDesigner:
            //    MdiSnipDesignerForm snipForm = (MdiSnipDesignerForm)form;
            //    _markPosition = snipForm;
            //    _search = Service.Sdsite.CurrentDocument.GetTmpltDocumentById(snipForm.TmpltID);
            //    break;
            case WorkDocumentType.Edit:
                MdiBaseEditViewForm editForm = (MdiBaseEditViewForm)form;
                _markPosition = editForm;
                _search       = Service.Sdsite.CurrentDocument.GetPageDocumentById(editForm.PageId);
                break;

            //case WorkDocumentType.HomePage:
            //    MdiHomePageDesignForm homeForm = (MdiHomePageDesignForm)form;
            //    _markPosition = homeForm;
            //    _search = Service.Sdsite.CurrentDocument.GetTmpltDocumentById(homeForm.TmpltID);
            //    break;
            case WorkDocumentType.None:
            case WorkDocumentType.WebBrowser:
            case WorkDocumentType.Manager:
            case WorkDocumentType.StartupPage:
            case WorkDocumentType.SiteProperty:
            default:
                kv = new KeyValuePair <ISearch, IMarkPosition>();
                return(false);

                #endregion
            }
            kv = new KeyValuePair <ISearch, IMarkPosition>(_search, _markPosition);
            return(true);
        }
示例#2
0
        /// <summary>
        /// 显示查找到的结果(位置)
        /// </summary>
        /// <param name="_currentPosition">查找到的位置</param>
        private void DisplayFindedResult(Position _currentPosition)
        {
            if (_currentPosition == null)
            {
                MessageService.Show("未找到结果,搜索回到起始点。");
            }
            else
            {
                Position    position    = _currentPosition;
                XmlDocument xmlDocument = (XmlDocument)position.GetDocument();
                Type        type        = xmlDocument.GetType();
                switch (type.Name)
                {
                case "HrXmlDocument":
                    HrXmlDocument       hrDoc  = (HrXmlDocument)position.GetDocument();
                    MdiBaseEditViewForm hrForm = Service.Workbench.OpenWorkDocument(WorkDocumentType.Edit, hrDoc.Id) as MdiBaseEditViewForm;
                    hrForm.MarkPosition(position);
                    break;

                case "InviteBiddingXmlDocument":
                    InviteBiddingXmlDocument bidDoc  = (InviteBiddingXmlDocument)position.GetDocument();
                    MdiBaseEditViewForm      bidForm = Service.Workbench.OpenWorkDocument(WorkDocumentType.Edit, bidDoc.Id) as MdiBaseEditViewForm;
                    bidForm.MarkPosition(position);
                    break;

                case "KnowledgeXmlDocument":
                    KnowledgeXmlDocument knowDoc  = (KnowledgeXmlDocument)position.GetDocument();
                    MdiBaseEditViewForm  knowForm = Service.Workbench.OpenWorkDocument(WorkDocumentType.Edit, knowDoc.Id) as MdiBaseEditViewForm;
                    knowForm.MarkPosition(position);
                    break;

                case "ProductXmlDocument":
                    ProductXmlDocument  prodcutDoc  = (ProductXmlDocument)position.GetDocument();
                    MdiBaseEditViewForm productForm = Service.Workbench.OpenWorkDocument(WorkDocumentType.Edit, prodcutDoc.Id) as MdiBaseEditViewForm;
                    productForm.MarkPosition(position);
                    break;

                case "ProjectXmlDocument":
                    ProjectXmlDocument  projectDoc  = (ProjectXmlDocument)position.GetDocument();
                    MdiBaseEditViewForm projectForm = Service.Workbench.OpenWorkDocument(WorkDocumentType.Edit, projectDoc.Id) as MdiBaseEditViewForm;
                    projectForm.MarkPosition(position);
                    break;

                default:
                    break;
                }
            }
        }
示例#3
0
        //结果窗口的定位 by lisuye on 2008年6月13日
        void _resultsListView_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            int index = _resultsListView.SelectedItems[0].Index;

            if (index != 0)
            {
                Position    position    = _dictionry[index];
                XmlDocument xmlDocument = (XmlDocument)position.GetDocument();
                Type        type        = xmlDocument.GetType();
                switch (type.Name)
                {
                case "HrXmlDocument":
                    HrXmlDocument       hrDoc  = (HrXmlDocument)position.GetDocument();
                    MdiBaseEditViewForm hrForm = Service.Workbench.OpenWorkDocument(WorkDocumentType.Edit, hrDoc.Id) as MdiBaseEditViewForm;
                    hrForm.MarkPosition(position);
                    FindOptions.Singler.CurrentPosition = position;
                    //if (index > 0)
                    //    FindOptions.Singler.StartPosition = _dictionry[index];
                    //else
                    //    FindOptions.Singler.StartPosition = null;
                    break;

                case "InviteBiddingXmlDocument":
                    InviteBiddingXmlDocument bidDoc  = (InviteBiddingXmlDocument)position.GetDocument();
                    MdiBaseEditViewForm      bidForm = Service.Workbench.OpenWorkDocument(WorkDocumentType.Edit, bidDoc.Id) as MdiBaseEditViewForm;
                    bidForm.MarkPosition(position);
                    FindOptions.Singler.CurrentPosition = position;
                    FindOptions.Singler.CurrentPosition = position;
                    //if (index > 0)
                    //    FindOptions.Singler.StartPosition = _dictionry[index];
                    //else
                    //    FindOptions.Singler.StartPosition = null;
                    break;

                case "KnowledgeXmlDocument":
                    KnowledgeXmlDocument knowDoc  = (KnowledgeXmlDocument)position.GetDocument();
                    MdiBaseEditViewForm  knowForm = Service.Workbench.OpenWorkDocument(WorkDocumentType.Edit, knowDoc.Id) as MdiBaseEditViewForm;
                    knowForm.MarkPosition(position);
                    FindOptions.Singler.CurrentPosition = position;
                    FindOptions.Singler.CurrentPosition = position;
                    //if (index > 0)
                    //    FindOptions.Singler.StartPosition = _dictionry[index];
                    //else
                    //    FindOptions.Singler.StartPosition = null;
                    break;

                case "ProductXmlDocument":
                    ProductXmlDocument  prodcutDoc  = (ProductXmlDocument)position.GetDocument();
                    MdiBaseEditViewForm productForm = Service.Workbench.OpenWorkDocument(WorkDocumentType.Edit, prodcutDoc.Id) as MdiBaseEditViewForm;
                    productForm.MarkPosition(position);
                    FindOptions.Singler.CurrentPosition = position;
                    FindOptions.Singler.CurrentPosition = position;
                    //if (index > 0)
                    //    FindOptions.Singler.StartPosition = _dictionry[index];
                    //else
                    //    FindOptions.Singler.StartPosition = null;
                    break;

                case "ProjectXmlDocument":
                    ProjectXmlDocument  projectDoc  = (ProjectXmlDocument)position.GetDocument();
                    MdiBaseEditViewForm projectForm = Service.Workbench.OpenWorkDocument(WorkDocumentType.Edit, projectDoc.Id) as MdiBaseEditViewForm;
                    projectForm.MarkPosition(position);
                    FindOptions.Singler.CurrentPosition = position;
                    FindOptions.Singler.CurrentPosition = position;
                    //if (index > 0)
                    //    FindOptions.Singler.StartPosition = _dictionry[index];
                    //else
                    //    FindOptions.Singler.StartPosition = null;
                    break;

                default:
                    break;
                }
            }
        }
示例#4
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);
        }