VS2005中得到 Web页面 或 窗体的 IDesignerHost

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;
       }

posted @ 2009-06-21 19:07 麦壳饼 阅读( ...) 评论( ...) 编辑 收藏
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 Visual Studio 使用高德地图 API 实现在 Web 窗体绘制地图,可以按照以下步骤进行: 1. 注册高德开发者账号并创建应用 在高德开发者心注册账号并创建应用,获取 API Key。API Key 是调用高德地图 API 的必备参数。 2. 在 Web 窗体添加地图容器 在 Web 窗体添加一个 div 容器作为地图的容器,在容器添加 id 属性,以便在 JavaScript 引用。示例代码如下: ```html <div id="map-container" style="width: 100%; height: 500px;"></div> ``` 3. 引入高德地图 JavaScript API 在 Web 窗体引入高德地图 JavaScript API,可以通过 CDN 或下载本地文件的方式引入。示例代码如下: ```html <script src="https://webapi.amap.com/maps?v=1.4.15&key=your-key"></script> ``` 其,`your-key` 是在第一步获取的 API Key。 4. 在 JavaScript 初始化地图对象 在 JavaScript 初始化地图对象,并将其添加到地图容器。示例代码如下: ```javascript // 创建地图对象 var map = new AMap.Map('map-container', { zoom: 10, // 设置地图缩放级别 center: [116.397428, 39.90923] // 设置地图心点坐标 }); ``` 其,`zoom` 表示地图缩放级别,`center` 表示地图心点坐标。 5. 在 JavaScript 添加地图覆盖物 可以在 JavaScript 添加各种类型的地图覆盖物,例如 Marker、Polyline、Polygon 等。示例代码如下: ```javascript // 创建 Marker 对象 var marker = new AMap.Marker({ position: [116.397428, 39.90923], // 设置 Marker 的位置 icon: 'https://webapi.amap.com/images/marker_sprite.png', // 设置 Marker 的图标样式 map: map // 将 Marker 添加到地图上 }); // 创建 Polyline 对象 var polyline = new AMap.Polyline({ path: [[116.368904,39.913423],[116.382122,39.901176],[116.387271,39.912501]], strokeColor: "#FF0000", strokeWeight: 6, strokeOpacity: 0.8, strokeStyle: "dashed", strokeDasharray: [10, 5], lineJoin: 'round', map: map }); // 创建 Polygon 对象 var polygon = new AMap.Polygon({ path: [[116.368904,39.913423],[116.382122,39.901176],[116.387271,39.912501]], strokeColor: "#FF0000", strokeWeight: 6, strokeOpacity: 0.8, fillColor: "#FF0000", fillOpacity: 0.3, strokeStyle: "dashed", strokeDasharray: [10, 5], lineJoin: 'round', map: map }); ``` 以上示例分别创建了 Marker、Polyline 和 Polygon 三种地图覆盖物,并将它们添加到地图上。 通过以上步骤,就可以在 Visual Studio 的 Web 窗体使用高德地图 API 绘制地图了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值