问题:
我得到的一个参数名称是:工作集,但是我获取它的值是Integer类型(438)。但是属性对话框中显示的是“建筑内墙”。这个438表示什么呢?怎样得到“建筑内墙”这个字符串呢?谢谢!
答:
最简单的办法是你从这个参数里的AsValueString() 函数可以直接获得工作集的名称, Parameter.AsValueString()
为了大家对WorkSet有一个更好的理解,下面我用完整代码来演示如何使用WorkSetTable来管理项目中的WorkSet.
[csharp] view plaincopy
- public void GetworkSetName()
- {
-
- Document doc = this.ActiveUIDocument.Document;
- Selection sel = this.ActiveUIDocument.Selection;
-
- Reference ref1 = sel.PickObject(ObjectType.Element,"Please pick an element to get the work set name");
- Element elem = doc.GetElement(ref1);
-
- int worksetvalue = elem.get_Parameter(BuiltInParameter.ELEM_PARTITION_PARAM).AsInteger();
-
- WorksetId id = new WorksetId(worksetvalue);
-
- WorksetTable table = doc.GetWorksetTable();
- Workset ws = table.GetWorkset(id);
- TaskDialog.Show("get elemetn's work set name",ws.Name);
-
- }
原文链接: http://blog.csdn.net/joexiongjin/article/details/17759343 作者: 叶雄进
|