明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 4023|回复: 4

[讨论]关于CommandMethod的问题

[复制链接]
发表于 2010-8-24 14:56:00 | 显示全部楼层 |阅读模式

VB.net 中为什么定义一个命令要用<CommandMethod("CommandName")>_这个结构呢?

我落后了,好久没碰那个了,不记得有这么种做法了,这个是什么意思呢?

我看了.NET的文档,这个CommandMethod应该是Autodesk.AutoCAD.Runtime下面的,但是Runtime下面只找到个CommandMethodAttribute这个类,构造函数是MSITStore:D:\Enocheasty\Soft\arxmgd.chm::/Autodesk_AutoCAD_Runtime_CommandMethodAttribute_CommandMethodAttribute@string@string@string@CommandFlags@Type@string@string.html">CommandMethodAttribute.CommandMethodAttribute (string, string, string, CommandFlags, Type, string, string) 这种形式的!

那为什么定义命令用<CommandMethod("CommandName")>_这个表达,是说指向一个Sub的首地址吗?

我不明白的是为什么是CommandMethod而不是CommandMethodAttribute,这个词我在整个文档中也没找到。。。

不知道表达清楚了没?

 

发表于 2010-8-24 15:25:00 | 显示全部楼层

CommandMethodAttribute的基类是Attribute

简单的解释:

先给你的自定义函数加个属性

Cad在加载你的dll的时候再反射出所有的带有该属性的函数

然后在命令堆栈调用该命令的时候去调用对应的函数

 楼主| 发表于 2010-8-24 15:39:00 | 显示全部楼层

那意思就是说相当于,比如我定义个CC的命令

<CommandMethod("CC")>_

Public CCx()

。。。

end sub

就是我给CCx这个Sub定义了一个CC的属性??让CAD知道,用CC的话就是去用CCx,这个倒是能理解。

 

我是想问,我现有的资料里面都没有讲CommandMethod这个的,这个是CommandMethodAttribute类下面的方法吗?还是属性??

有相关资料吗?

现在.Net 的资料不多,要不是看到有代码示例,我还真不知道定义CommandMethod,我肯定用CommandMethodAttribute了。所以想知道关于这样的情况的同一类用法。。。

 

发表于 2010-8-24 15:45:00 | 显示全部楼层

http://sifang2004.cnblogs.com/archive/2006/01/12/316313.html

因为这个是.Net的基础,呵呵

 楼主| 发表于 2010-8-24 15:51:00 | 显示全部楼层

非常感谢!我问的就是这个。。。

.NET的新东西啊。我说老VB里面怎么没这个。看不懂啊!!

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

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-26 00:56 , Processed in 0.238695 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表