Revit中的参数修改要通过Parameter的Set方法来设置,
但是Set()里面传的参数类型是和Parameter的类型
有关系的,判断参数类型,可以通过 Parameter.StorageType
这里列举了 Parameter值的5中类型,
对于IsReadOnly的parameter 是不能修改的
对None的Parameter 是不能用Set方法来设值的
对Integer的Parameter ,设值的时候要传Int 型的参数
如:set(2);
对Double的Parameter,设值的时候要传Double型的参数
如:set(2.3);
对String的Parameter,设值的时候要传String型的参数
如:set(“我的参数值”);
对ElementId的Parameter,设值的时候要传ElementId型的参数
如:set(new ElementId(311));
下面是一个修改楼板标高和自标高偏移两个参数的实例,
关键代码如下:
Parameter lvlParm = floor.LookupParameter("标高");
Parameter lvlOff = floor.LookupParameter("自标高的高度偏移");
Transaction trans = new Transaction(doc, "修改参数");
trans.Start();
if(!lvlParm.IsReadOnly)
lvlParm.Set(lvl.Id);// lvl 为要设置的标高
if(!lvlOff.IsReadOnly)
lvlOff.Set(5);
trans.Commit();
由于无法加载上传附件,源码请加qq群480950299下载