You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Revit 2023之前版本中ViewSheetSet.OrderedViewList属性的替代方案

Revit 2023之前版本获取图纸集中视图的替代方案

我开发了一个Revit插件功能,用于自动填充图纸列表进度表的**发布日期(共享参数)**列。初始化阶段需要获取所有ViewSheetSet并添加到界面列表框和字典中,当前在Revit 2023/24版本中通过OrderedViewList属性实现的代码如下:

FilteredElementCollector sheetSetColl = new FilteredElementCollector(doc);
var allSheetSets = sheetSetColl.OfClass(typeof(ViewSheetSet)).ToElements();
foreach(ViewSheetSet vss in allSheetSets)
{
    if(!sheetSetDict.ContainsKey(vss.Id))
    {
        if(vss.OrderedViewList.Where(x => x.ViewType == ViewType.DrawingSheet).Count() != 0)
        {
            sheetSetDict.Add(vss.Id, $"{vss.Name} - {vss.OrderedViewList.Where(x => x.ViewType == ViewType.DrawingSheet).Count()} sheets");
            dpSheetSetCB.Items.Add($"{vss.Name} - {vss.OrderedViewList.Where(x => x.ViewType == ViewType.DrawingSheet).Count()} sheets");
        }
    }
}

这段代码在Revit 2023/24中可以正常运行,但我发现ViewSheetSet类的OrderedViewList属性在2023之前的版本中并不存在。

我自己尝试了两种方法,但都不满意:

  • 方法1:收集所有关联了非空图纸集的视图,遍历过程中按唯一集ID创建单独列表。但这种方法繁琐又耗时,我想尽量避免。
  • 方法2:尝试用ViewSheetSet.Views提取视图或ID并转为列表,模拟OrderedViewList的用法。但它仅返回原ViewSheetSet实例,问题又回到了原点。

想请教一下,在Revit 2023之前的版本中,开发者是如何列出图纸集中的视图的?应该有我忽略的简单替代方案。

内容的提问来源于stack exchange,提问作者Benyomin Faden

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 21:30:05