首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Navisworks Treeview到Datatable

Navisworks Treeview到Datatable
EN

Stack Overflow用户
提问于 2017-07-04 20:24:00
回答 1查看 125关注 0票数 1

我想在navisworks中转换一个模型中的treeview并创建一个datatable。我试着使用foreach,但没有成功。

任何帮助都将不胜感激

EN

回答 1

Stack Overflow用户

发布于 2017-07-09 12:28:02

我通过获取Descendants并将其传递到IEnumerable中解决了我的问题

代码语言:javascript
复制
var Descendants = PL.oDoc.Models.First.RootItem.Descendants.Select(x => x);

然后使用此方法将其转换为datatable:

代码语言:javascript
复制
    public static DataTable DataTable<T>(this IEnumerable<T> items)
    {
        var tb = new DataTable(typeof(T).Name);

        PropertyInfo[] props = typeof(T).GetProperties(BindingFlags.Public | BindingFlags.Instance);

        foreach (var prop in props)
        {
            tb.Columns.Add(prop.Name, prop.PropertyType);
        }

        foreach (var item in items)
        {
            var values = new object[props.Length];
            for (var i = 0; i < props.Length; i++)
            {
                values[i] = props[i].GetValue(item, null);
            }

            tb.Rows.Add(values);
        }

        return tb;
    }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44905918

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档