乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 99|回复: 7

插入块之后为什么不能用增强属性编辑器打开?

[复制链接]

6

主题

11

帖子

1

银币

初来乍到

Rank: 1

铜币
35
发表于 2010-9-7 21:29:00 | 显示全部楼层 |阅读模式
大侠们,我在代码中将一个外部DWG图纸的块插入到当前图纸中,但是插入之后再当前图纸中双击块是打开“编辑块定义”这个对话框,如何能让我双击之后打开的是“增强属性编辑器”这个对话框呢?
PS:这个块是定义好属性的,打开外部DWG图纸就可以用 增强属性编辑器 打开
下面是我插入块的代码
public void AddBlockRef(double bx, double by, double bz)
        {
            Autodesk..ApplicationServices.Document doc = Application.DocumentManager.MdiActiveDocument;
            Editor ed = doc.Editor;
            Point3d point = new Point3d(bx, by, bz);
            using (Database db = new Database(false, false))
            {
                using (Transaction trans = doc.TransactionManager.StartTransaction())
                {
                    BlockTable bt = (BlockTable)trans.GetObject(doc.Database.BlockTableId, OpenMode.ForRead);
                    BlockTableRecord btr = (BlockTableRecord)trans.GetObject(bt[BlockTableRecord.ModelSpace], OpenMode.ForWrite);
                    //读取块
                    string blockFile = @"d:\arx\bplead_title.dwg";
                    string blockName = "BPLEAD_TITLE";
                    db.ReadDwgFile(blockFile, System.IO.FileShare.Read, true, null);
                    ObjectId blockId = doc.Database.Insert(blockName, db, false);
                    using (BlockReference br = new BlockReference(point, blockId))
                    {
                        btr.AppendEntity(br);
                        trans.AddNewlyCreatedDBObject(br, true);
                    }
                    trans.Commit();
                }
            }
            
            //return blockId;//返回创建的块的对象Id
        }
回复

使用道具 举报

72

主题

2726

帖子

9

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3014
发表于 2010-9-7 21:31:00 | 显示全部楼层
块参照的属性集合还是要用代码生成的,不会自动加的
回复

使用道具 举报

6

主题

11

帖子

1

银币

初来乍到

Rank: 1

铜币
35
发表于 2010-9-7 21:33:00 | 显示全部楼层
大侠,我看过你好多帖子,灰常有帮助,想不到你在啊,能指点一下吗
回复

使用道具 举报

72

主题

2726

帖子

9

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3014
发表于 2010-9-7 21:38:00 | 显示全部楼层
看的AppendAttribToBlock函数
回复

使用道具 举报

6

主题

11

帖子

1

银币

初来乍到

Rank: 1

铜币
35
发表于 2010-9-7 21:47:00 | 显示全部楼层
BlockRefJig jig = new BlockRefJig(blkref, AppendAttribToBlock(blkref, atts));
674.             jig.SetPromptCounter(0);
675.             PromptResult res = CadHelper.Editor.Drag(jig);
676.             if (res.Status == PromptStatus.OK)
677.             {
678.                 jig.SetPromptCounter(1);
679.                 res = CadHelper.Editor.Drag(jig);
680.                 if (res.Status == PromptStatus.OK)
681.                 {
682.                     return id;
683.                 }
684.             }
685.             blkref.Erase();
在这里面调用你说的这个方法的? 看不太明白呀,哪个方法是实现这个的?  详细点说一下吧,嘿嘿,多谢
回复

使用道具 举报

72

主题

2726

帖子

9

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3014
发表于 2010-9-7 21:54:00 | 显示全部楼层
复制代码
回复

使用道具 举报

6

主题

11

帖子

1

银币

初来乍到

Rank: 1

铜币
35
发表于 2010-9-7 21:57:00 | 显示全部楼层
好,我去试试,多谢,有不明白的在请教您!
回复

使用道具 举报

6

主题

11

帖子

1

银币

初来乍到

Rank: 1

铜币
35
发表于 2010-9-7 22:09:00 | 显示全部楼层
复制代码大侠,这是我修改的类,但是部署了报错~
致命错误:Unhandled Access Violation Reading 0x0004 Exception at 645ad340h
能帮忙看看吗,哪出问题了~
file:///C:/Users/Nemo/AppData/Local/Temp/moz-screenshot.png
file:///C:/Users/Nemo/AppData/Local/Temp/moz-screenshot-1.png
file:///C:/Users/Nemo/AppData/Local/Temp/moz-screenshot-2.png
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-15 07:32 , Processed in 0.348988 second(s), 68 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表