当前位置: 首页>>代码示例>>C#>>正文


C# IDesignerHost.AddService方法代码示例

本文整理汇总了C#中IDesignerHost.AddService方法的典型用法代码示例。如果您正苦于以下问题:C# IDesignerHost.AddService方法的具体用法?C# IDesignerHost.AddService怎么用?C# IDesignerHost.AddService使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在IDesignerHost的用法示例。


在下文中一共展示了IDesignerHost.AddService方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Initialize

        /// <summary>
        /// ��ʼ������HostDesign��Ķ��󣬼��ص�ǰ��ѡ�ؼ��仯ʱ���¼��������Ϣ�����
        /// �õ��ķ������Կؼ��������IJ˵���״̬������ǩ�ؼ���TabControl�����˵�����
        /// ��ӵķ��񣺳���/�ظ�
        /// </summary>
        internal void Initialize()
        {
            host = (IDesignerHost)this.GetService(typeof(IDesignerHost));

            if (host == null)
            {
                return;
            }
            try
            {
                selectionService = (ISelectionService)(this.GetService(typeof(ISelectionService)));
                selectionService.SelectionChanged += new EventHandler(selectionService_SelectionChanged);
                if (host.RootComponent != null)
                {
                    ((Control)host.RootComponent).Resize += new EventHandler(CassView_Resize);
                }
                cassPropertyGrid = (FilteredPropertyGrid)(this.GetService(typeof(FilteredPropertyGrid)));
                operateMenu = (ContextMenuStrip)(this.GetService(typeof(ContextMenuStrip)));
                designMousePosition = (ToolStripStatusLabel)(this.GetService(typeof(ToolStripStatusLabel)));
                editToolMenuItem = (ToolStripMenuItem)this.GetService(typeof(ToolStripMenuItem));

                //��ӳ���/�ظ���������
                IServiceContainer serviceContainer = host.GetService(typeof(ServiceContainer)) as IServiceContainer;
                undoEngine = new UndoEngineImplication(serviceContainer);
                undoEngine.Enabled = false;    //�رճ������ظ�����
                host.AddService(typeof(UndoEngineImplication), undoEngine);
            }
            catch (Exception ex) { }
        }
开发者ID:alloevil,项目名称:A-embedded-image-processing-platform--,代码行数:34,代码来源:HostDesign.cs

示例2: CreateDesigner

        void CreateDesigner(bool New, string XmlCode)
        {
            ModUi.ResetEventHandlers();
            //Create a new DesignSurface
            ModDesignSurface MDS = new ModDesignSurface();
            MDS.SetUpSelectionService();

            MDS.BeginLoad(typeof(Form));

            IDH = (IDesignerHost)MDS.GetService(typeof(IDesignerHost));
            try
            {
                IDH.RemoveService(typeof(ITypeDescriptorFilterService));
            }catch{}
            try
            {
                IDH.RemoveService(typeof(IToolboxService));
            }catch{}
            try
            {
                IDH.RemoveService(typeof(PropertyGrid));
            }catch { }

            //Read XML and update the Form control
            if (!New)
            {
                ModCodeAndControlHolder Code = ModUiTools.XmlToCode(XmlCode, (Form)IDH.RootComponent);
            }

            //Panel P = (Panel)IDH.CreateComponent(typeof(Panel));
            //P.Location = ModUiTools.GetLocationDefinition(20, 20);
            //P.Size = ModUiTools.GetSizeDefinition(100, 100);
            //Button B = (Button)IDH.CreateComponent(typeof(Button), "TestButton");
            //B.Text = "123";
            //P.Controls.Add(B);
            //P.Parent = (Form)IDH.RootComponent;

            try
            {
                this.BaseSplit.Panel2.Controls.RemoveAt(0);
            }
            catch { }
            Control C = MDS.View as Control;
            C.Parent = this.BaseSplit.Panel2;
            C.Dock = DockStyle.Fill;

            IDH.AddService(typeof(ITypeDescriptorFilterService), new CustomFilterService());

            ModToolBox TB = new ModToolBox();
            TB.Parent = this.ToolboxTab;
            TB.Dock = DockStyle.Fill;
            IDH.AddService(typeof(IToolboxService), TB);

            PropertyGrid PG = new PropertyGrid();
            PG.Parent = this.PropertiesPropertySubTab;
            PG.Dock = DockStyle.Fill;

            IDH.AddService(typeof(PropertyGrid), PG);

            // Use ComponentChangeService to announce changing of the
            // Form's Controls collection */
            IComponentChangeService ICC = (IComponentChangeService)IDH.GetService(typeof(IComponentChangeService));
            ICC.OnComponentChanging(IDH.RootComponent, TypeDescriptor.GetProperties(IDH.RootComponent)["Controls"]);
        }
开发者ID:0ks3ii,项目名称:IronWASP,代码行数:64,代码来源:ModUiDesigner.cs


注:本文中的IDesignerHost.AddService方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。