由于WPF的优点多多,而且在大量的winform的操作下感觉到数据操作的麻烦....推荐大家看杨中科WPF数据绑定教程 https://www.bilibili.com/video/av33883484/?p=1

在cad.net上面,类库项目不能简单进行新建WPF面板,但是依照下面教程就能成功将WPF面板写入cad2008项目内.

此篇引用山人的教程,原地址是: https://gitee.com/vicwjb/NFox/blob/master/doc/WPF.md

我只做了cad2008部分的修改和释疑.

由于在类库项目内,只能添加wpf的自定义控件项目。

如下图,你是不能添加wpf窗体到类库项目的。因此为了将wpf窗体添加到类库项目里,需要采用一些奇淫巧技。

  1. 首先打开vs创建一个wpf应用项目。

  1. 创建完之后什么,可以自定义一些内容,比如添加一些属性啊什么的,本示例保持默认。

  1. 然后菜单栏-项目-导出模版,打开导出模版向导。

  1. 选择项模版,下一步

  1. 只选择MainWindow.xaml文件,下一步

  1. 选择引用的dll。

  1. 在模版选项里填写模版名称、说明,还可以添加图标,然后点击完成。

现在可以在类库里添加的模版就创建好了,下面是怎么使用这个模版在类库里插入wpf窗体。首先以frameworks类库项目为例:

  1. 新建个类库项目
  2. 然后右键添加-新建项。

  1. 然后选择刚刚新建的模版,点击添加。 没有的话,要重启VS......

  1. 检查已经添加 PresentationCore、PresentationFramework、System.Xaml(这个在2008没有的,net4.5才要)、WindowsBase这四个引用。


    (这里可以画一些按钮)

  2. 引用cad2008的dll
  3. 在class1.cs内加入这些测试代码.生成dll,在cad加载就可以了.
using Autodesk.AutoCAD.ApplicationServices;
using Autodesk.AutoCAD.DatabaseServices;
using Autodesk.AutoCAD.EditorInput;
using Autodesk.AutoCAD.Runtime;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace 类库的测试WPF
{
public class Class1
{
[CommandMethod("tt", CommandFlags.Modal)] //预选
public static void tt()
{
//当前的数据库
Database db = HostApplicationServices.WorkingDatabase;
Editor ed = Application.DocumentManager.MdiActiveDocument.Editor;
ed.WriteMessage(Environment.NewLine + "****cad2008测试WPF" + Environment.NewLine); //打开面板,设置成模态对话框
var form = new MyWindow1();
form.ShowDialog();
}
}
}

cad.net 2008使用WPF(摘录山人)的更多相关文章

  1. 【WPF】CAD工程图纸转WPF可直接使用的xaml代码技巧

    前言:随着工业化的进一步发展,制造业.工业自动化等多领域,都可能用到上位监控系统.而WPF在上位监控系统方面,应该算是当下最流行的前端框架之一了.而随着监控体系的不断完善与更新迭代,监控画面会变得越来 ...

  2. LiveCharts文档-3开始-8自定义工具提示

    原文:LiveCharts文档-3开始-8自定义工具提示 LiveCharts文档-3开始-8自定义工具提示 默认每个需要tooltip或者legend的chart都会初始化一个DefaultLeng ...

  3. 十余年软件开发经历,经验总结和程序一览(涉及Socket、WPF、vc++、CAD、图像、GIS)

    前言 本文主要介绍我开发的几款软件产品,大概介绍一下功能.可以让读者了解本人的开发能力,所擅长的方面.有相关开发需求可以联系作者. 本人开发软件多年,从事的行业也多种多样:自然接触了不同的业务,开发了 ...

  4. 距离北京奥运还有359天,发布WPF版本的北京2008标志(上)

    原文:距离北京奥运还有359天,发布WPF版本的北京2008标志(上) 效果图: XAML代码:<Canvas Width="343.581055" Height=" ...

  5. 距离北京奥运还有359天,发布WPF版本的北京2008标志(下)

    原文:距离北京奥运还有359天,发布WPF版本的北京2008标志(下) 图片显示效果:  XAML代码: <Viewbox Width="463.548828" Height ...

  6. WPF中CAD control的XAML实现

    原文:WPF中CAD control的XAML实现     下面这个XAML文件是cad control里面最重要的一部分,使用Grid包含Viewport,Viewport中包括Camera和mod ...

  7. WPF中使用TranslateTransform3D修改CAD的3D旋转中心

    原文:WPF中使用TranslateTransform3D修改CAD的3D旋转中心        前面一篇文章讲述了2D旋转功能的实现,文章提到了修改3D旋转中心,这一节主要总结一下具体的修改3D旋转 ...

  8. WPF中使用AxisAngleRotation3D实现CAD的2D旋转功能

    原文:WPF中使用AxisAngleRotation3D实现CAD的2D旋转功能       对于CAD图形来说,3D旋转比较常用,具体实现方法在上篇文章<WPF中3D旋转的实现 >中做了 ...

  9. WPF在3D Cad模型中利用TextureCoordinates实现颜色渐变显示偏差值的变化

    原文:WPF在3D Cad模型中利用TextureCoordinates实现颜色渐变显示偏差值的变化 注:最近在做3D机械模型重建方面的软件,需要根据光栅传感器采集的数据绘制3D图形,并显示出色差以及 ...

随机推荐

  1. 使用CodeFirst创建数据库

    1.新建一个类库项目 2.右键管理Nuget程序包,搜索EntityFramework.然后安装 3.新建一个类,然后引用 using System.Data.Entity; 然后写类初始化方法(ba ...

  2. IDEA 设置: Live Templates 方法注释 注释模板编写

    IDEA: Live Templates 方法注释 注释模板编写: 打开IDEA开发工具进入设置找到Editor: File>>Setting>>Editor>>L ...

  3. python plotly画柱状图

    代码 import pandas as pd import numpy as np import plotly.plotly as py import plotly.graph_objs as go ...

  4. Redis主从复制看这篇就够了

    一.概念和作用 概念:主机数据更新后根据配置和策略, 自动同步到备机的master/slaver机制,Master以写为主,Slave以读为主. 作用: 读写分离: 容灾恢复: 二.复制原理 slav ...

  5. open live writer安装以及代码高亮、折叠插件安装

    一.目的 方便在本地写博客,不用在浏览器上写. 二.open live writer的安装 下载open live writer 这是我的 链接:https://pan.baidu.com/s/1u8 ...

  6. Vue.js最佳实践--给大量子孙组件传值(provide/inject)

    开发中有个需求,有个Parent组件(例如div)下,输入框,下拉框,radiobutton等可编辑的子孙组件几百个,根据某个值统一控制Parent下面的所有控件的disabled状态 类似于这样,给 ...

  7. android studio学习---菜单栏BUILD功能

    项目构建: 1.构建项目 2.重构项目 3.签名打包

  8. Qt TCP通信

    工程文件 QT += network 服务端 #ifndef WIDGET_H #define WIDGET_H #include <QWidget> #include <QTcpS ...

  9. 微信小程序开发--flex详细解读(2)

    一.align-items和其参数  stretch / baseline 注:sretch只有在交叉轴没有设置固定长度的情况下才有作用                                 ...

  10. ajax请求体

    jquery向服务器发送一个ajax请求后,可以返回多种类型的数据格式,包括:html,xml,json,text等. $.ajax({ url:"http://www.test.com&q ...