操作环境:XP,C# ,.Net4.0和VS2010中测试

WinForm中使用DWGThumbnail不用这么麻烦,下面讨论的是在WPF中使用,WPF中无法直接引用DWGThumbnail.ocx来操作

新建一个WPF项目,

添加一个WinForm窗口(即Form1.cs),在Form1窗口(这里注意不是MainWindow窗口)的工具箱中点右键“选择项”,

弹出选择工具箱项,切换到COM组件,

点击“浏览”打开你下载的这个控件DWGThumbnail.ocx,在列表中找到AutoCAD DwgThumbnail Control打上勾,确定。

这时你的Form1设计界面的工具箱中会出现AutoCAD DwgThumbnail Control这个控件的图标,拖一个至Form1窗口中,

然后关闭这个Form1窗口即可,这一步骤的目的就是为了在项目引用集里加入AxDWGTHUMBNAILLib这个类库,

自己直接“添加引用”不行,会报错。这时这个Form1.cs使命完成可以删除了,当然你不删也随便你。

1、在WPF中使用WinForm控件,需添加三个引用:

WindowsFormsIntegration.dll(负责整合WPF和Windows)

System.Windows.Forms

System.Drawing

2、在XAML文件中也添加两个引用(粗体部分):

&ltWindow x:Class="test.MainWindow"

//添加下面这两行

xmlns:wfi ="clr-namespace:System.Windows.Forms.Integration;assembly=WindowsFormsIntegration"

xmlns:wf ="clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"

//

xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

Title="WPF中使用WinForm控件预览DWG文件" Height="350" Width="525"&gt

&ltGrid&gt

&ltwfi:WindowsFormsHost Name="ddd" Background="Beige"&gt

&ltwf:Panel /&gt //这里随便添个控件占位,不加会出错

&lt/wfi:WindowsFormsHost&gt

&ltGrid/&gt

&lt/Window&gt

3、然后写个方法在事件中调用就行了。

private void DWGview()

{

AxDWGTHUMBNAILLib.AxDwgThumbnail ax = new AxDWGTHUMBNAILLib.AxDwgThumbnail();

ax.Location = new System.Drawing.Point(2, 2); //坐标

ax.Size = new System.Drawing.Size(203, 252); //坐标跟尺寸跟下面的width、height可灵活用,不是非写不可

ddd.Child.Controls.Add(ax);

//ax.Width = 600;

//ax.Height = 300;

ax.HasFocusRect = false; //不要焦点虚线

ax.BackColor = System.Drawing.Color.Black; //背景色

ax.DwgFileName = @"C:\aa.dwg";

ax.Refresh();

winform界面嵌入dwg图纸_WPF中使用WinForm控件预览DWG文件(学习笔记)相关推荐

  1. 网页中实现安卓手机在线预览PDF文件

    写在前面:本文为转载,原文链接:https://blog.csdn.net/super_DuoLa/article/details/90207965原文链接 苹果手机可以直接在线预览PDF文件,而安卓 ...

  2. Asp.net中服务端控件事件是如何触发的(笔记)

    Asp.Net 中在客 户端触发服务器端事件分为两种情况: 一.   WebControls中的Button 和HtmlControls中的Type为submit的HtmlInputButton 这两 ...

  3. android 中使用ExpandableListView控件结合服务器json文件的下载

    布局文件代码: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns ...

  4. 由于 Microsoft Word预览器中出现错误,无法预览此文件

    右键--属性 常规窗格下面

  5. winform界面嵌入dwg图纸_完美解决窗体中预览DWG图形(C#版)

    看到完美解决VB.NET窗体中预览DWG图形帖子后,用C#代码 实现如下: class ViewDWG { struct BITMAPFILEHEADER { public short bfType; ...

  6. Winform编程中的treeview控件

    Winform编程中的treeview控件 treeview基础操作 treeview添加.删除节点操作 treeview节点展开与折叠 treeview节点重命名 treeview获取节点集合并设置 ...

  7. WinForm开发中针对TreeView控件改变当前选择节点的字体与颜色

    WinForm开发中针对TreeView控件改变当前选择节点的字体与颜色  在B/S开发中,对TreeView控件要改变当前选中节点的颜色比较方便,其有相应的SelectedNodeChanged事件 ...

  8. c#在WinForm中重写ProgressBar控件(带%的显示)

    c#在WinForm中重写ProgressBar控件(带%的显示) 2009-05-14 13:13 #region 定义textProgressBar控件的类 namespace csPublish ...

  9. WinForm中使用Excel控件

     最近项目中要在WinForm中使用Excel控件,经过几天的研究,现在总结一下成果. 在WinForm中使用Excel控件主要有三种方法:WebBrowser.DSOFramer.OWC.下面分别 ...

最新文章

  1. mysql 插入_Mysql中创建表格及插入数据
  2. 二次创业成功人士的19个经验与教训
  3. 使用API动态添加删除菜单项
  4. MFC主线程使用WaitForSingleObject阻塞的问题
  5. python+Tesseract-OCR实现图片识别(只适合新手)
  6. 软件工程生命周期模型_软件生命周期模型比较| 软件工程
  7. 圆排列问题详解(原理+代码)
  8. UML快速指南(摘要)转载
  9. 【30天精通JavaScript ~ 网络篇】JavaScript 网络请求与远程资源
  10. gcforest 深度森林原理及实现
  11. java 网页转pdf_JAVA中将html转换成pdf
  12. 有限元分析类毕业论文文献(推荐10篇)
  13. 思科Cisco交换机运维手册
  14. 初级、中级、高级程序员的区别在哪里?
  15. 骑行318、 2016.7.23
  16. 【FLUENT案例】01:T型管混合器中的流动与传热
  17. 云南省科协第十届学术年会在曲靖开幕
  18. 算法-求数组的子数组之和的最大值
  19. zabbix离线驱动盘安装
  20. 二叉树的深度和平衡二叉树的深度

热门文章

  1. java多线程执行任务
  2. php多用户数据隔离方案,Laravel jwt 多表(多用户端)验证隔离
  3. 关于动态内表的逆向考勤程序
  4. 【阵容分享】蜀弓拼华佗,好使不?顺便讲讲华佗、诸葛亮
  5. {软件设计师之路}程序员道路的经验之谈
  6. html5 实现波浪效果图,html5Canvas动画实现球内波浪效果
  7. 传奇SF刷元宝之王者荣耀版本
  8. ajax便利数据库,ajax遍历data数据库
  9. servlet的url-pattern匹配规则
  10. JavaScript 截取数组