zoukankan      html  css  js  c++  java
  • VS2005中得到 Web页面 或 窗体的 IDesignerHost

    private IDesignerHost GetDesignerHost(Window window)
           {
               // In most instances, the IDesignerHost can be retrieved
               // directly off of the window object.
               IDesignerHost designerHost = window.Object as IDesignerHost;
               if (designerHost != null)
                   return designerHost;

               // webform designer though, is a special case
               HTMLWindow htmlWindow = window.Object as HTMLWindow;
               if (htmlWindow != null)
               {
                   // make sure current tab is the designer tab
                   htmlWindow.CurrentTab = vsHTMLTabs.vsHTMLTabsDesign ;
                   IOleServiceProvider oleSP = (IOleServiceProvider)htmlWindow.CurrentTabObject;
                   Microsoft.VisualWebDeveloper.Interop.WebDeveloperPage.DispDesignerDocument d = htmlWindow.CurrentTabObject as Microsoft.VisualWebDeveloper.Interop.WebDeveloperPage.DispDesignerDocument;
                   Guid guidVsMDDDesigner = new Guid("7494682A-37A0-11d2-A273-00C04F8EF4FF");
                   IntPtr ptr;
                   oleSP.QueryService(ref guidVsMDDDesigner, ref guidVsMDDDesigner, out ptr);
                   if (ptr != IntPtr.Zero)
                   {
                       IServiceProvider dotnetSP = (IServiceProvider)Marshal.GetObjectForIUnknown(ptr);
                       Marshal.Release(ptr);
                       designerHost = (IDesignerHost)dotnetSP.GetService(typeof(IDesignerHost));
                   }
               }
               return designerHost;
           }

  • 相关阅读:
    函数柯里化
    常用正则
    校验table行内的form编辑
    前端代码 读取excel表格数据
    cocos2d-x 帧动画学习
    Linux 下vim配置
    Android开发笔记 二
    cocos2d-x CCDictionary类学习
    Android开发笔记
    Cococs2d-x移植到Window下的问题
  • 原文地址:https://www.cnblogs.com/MysticBoy/p/1507877.html
Copyright © 2011-2022 走看看