c# - 帮助中的 View 过滤器不起作用

标签 c# api view filter revit

我正在尝试运行 Autodesk 帮助中的代码

http://help.autodesk.com/view/RVT/2014/ENU/?guid=GUID-B6FB80F2-7A17-4242-9E95-D6056090E85B 但它似乎不起作用。代码“FirstElement ().get_Parameter("评论");" 不工作。没有这个功能。

我收到以下错误:

Revit encoutered a System.MissingMethodException; Method not found:'AutoDesk.Revit.DB.Parameter Autodesk.Revit.DB.Element.get_Parameter(System.String)

这段代码有什么问题?

  private void CreateViewFilter(Autodesk.Revit.DB.Document doc, View view)
    {
    List<ElementId> categories = new List<ElementId>();
    categories.Add(new ElementId(BuiltInCategory.OST_Walls));
    ParameterFilterElement parameterFilterElement = 
    ParameterFilterElement.Create(doc, "Comments = foo", categories);

    FilteredElementCollector parameterCollector = new FilteredElementCollector
    (doc);
    Parameter parameter = parameterCollector.OfClass(typeof(Wall)).FirstElement
    ().get_Parameter("Comments");

    List<FilterRule> filterRules = new List<FilterRule>();
    filterRules.Add(ParameterFilterRuleFactory.CreateEqualsRule  
    (parameter.Id, "foo", true));
      parameterFilterElement.SetRules(filterRules);


     OverrideGraphicSettings filterSettings = new OverrideGraphicSettings();
    // outline walls in red            
    filterSettings.SetProjectionLineColor(new Color(255, 0, 0));
    view.SetFilterOverrides(parameterFilterElement.Id, filterSettings);
    }

最佳答案

我猜您使用的 Revit 版本与帮助版本 (2014) 不同?

我认为 get_Parameter 自几个版本以来已被弃用。

你可以试试LookupParameter :

...FirstElement().LookupParameter("Comments");

或最终GetParameters ,但要小心,这个返回一个集合:

...FirstElement().GetParameters("Comments");

(链接指的是最新版本,但您可以轻松地在同一站点上检查另一个版本,并且自 Revit 2015 以来这两种方法看起来没有变化。)

关于c# - 帮助中的 View 过滤器不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46549248/

相关文章:

java - Recyclerview 中的 view.GONE 仍保留空间

c# - 在 .net com 类上运行 regasm.exe

c# - 将项目转换为 Xamarin 统一 api : "Failed to load output manifest for actool for the file..."

api - 有什么好的金融API吗?

c# - 将 VIEW 作为 STRING 传递

MySQL 触发器、 View 、单独的表或忠诚度积分的即时计算?

c# - 如何实现模式 promise /延迟?

c# - 通过 SyntaxFactory (Roslyn) 构造 NameOf 表达式

php - 如何使用 Sugar API 从自定义表中获取数据

iphone - 有没有 API 可以在两个 iphone/ipod Touch/ipad 之间共享数据? (游戏套件除外)