精品免费久久久_亚洲VA中文字幕无码毛片_成人黄色片在线观看_变态SM天堂无码专区_亚洲视频在线观看一区二区三区_伊人色综合久久天天五月婷

技術支持 / 技術論壇 / 二次開發 / 【技術分享】【C#】NX樹列表節點的多類型數據關聯管理
【技術分享】【C#】NX樹列表節點的多類型數據關聯管理
帖子
14
精華
1
積分
154
二次開發 技術分享

        在NX二次開發中,通常樹列表節點不僅僅作為顯示內容的載體,在程序中內,節點(Node)往往對應著各類的數據,對樹列表節點的值修改,需要同步對數據值的修改。

        數據的類型往往并非一成不變,如果存在多種數據類型需要綁定節點的情況,此時可以使用如下方法。

using System.Collections.Generic;
using System.Linq;
using NXOpen.BlockStyler;
namespace F3D.DF.InfManagement.BatchColoringOfHoles
{
    internal class ToolNodeData
    {
        /// <summary>
        /// 行綁定數據
        /// </summary>
        /// <param name="node"></param>
        /// <param name="nodeDataTypes"></param>
        internal ToolNodeData(Node node, NodeDataTypes nodeDataTypes)
        {
            Node = node;
            NodeDataType = nodeDataTypes;
        }
        internal NodeDataTypes NodeDataType { get; }
        internal enum NodeDataTypes
        {
            Description,
            HoleColorStandard
        }
        /// <summary>
        /// 行
        /// </summary>
        internal Node Node { get; set; }
        /// <summary>
        /// 數據
        /// </summary>
        internal object Data { get; set; }
    }

    internal class NodeDataManage : List<ToolNodeData>
    {
        /// <summary>
        /// 檢索數據
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="node"></param>
        internal T Search<T>(Node node)where T:class
        {
            return this.FirstOrDefault(obj => obj.Node == node)?.Data as T;
        }
        /// <summary>
        /// 移除某個數據
        /// </summary>
        /// <param name="nodeDataTypes"></param>
        internal void RemoveNodeData(Node node)
        {
            this.Remove(this.FirstOrDefault(obj => obj.Node.Tag == node.Tag));
         
        }
        /// <summary>
        /// 移除某個類型的數據
        /// </summary>
        /// <param name="nodeDataTypes"></param>
        internal void RemoveNodeDataOfType(ToolNodeData.NodeDataTypes nodeDataTypes)
        {
            for (int i = this.Count-1; i>=0; i--)
            {
                if (this[i].NodeDataType == nodeDataTypes)
                {
                    this.RemoveAt(i);
                }
            }
        }
        
    }
}
internal class NodeData { /// <summary> /// 行綁定數據 /// </summary> /// <param name="node"></param> /// <param name="nodeDataTypes"></param> internal NodeData(Node node, NodeDataTypes nodeDataTypes) { Node = node; NodeDataType = nodeDataTypes; } internal NodeDataTypes NodeDataType { get; } internal enum NodeDataTypes { //修改零件名稱預設 PartName, //修改預設備注 Remarks, } /// <summary> /// 行 /// </summary> internal Node Node { get; set; } /// <summary> /// 數據 /// </summary> internal object Data { get; set; } }


使用方法,先new

 internal class ConfigEditBuilder
    {
        private NodeDataManage _nodeDataManage = null;
        internal void Show()
        {
            _nodeDataManage = new NodeDataManage();    }    }

數據添加

_nodeDataManage.Add(new NodeData(node, NodeData.NodeDataTypes.PartName) { Data = partName });

數據檢索

var data = _nodeDataManage.Search<Material>(node);

通過節點刪除數據

_nodeDataManage.RemoveNodeData(node);
1189 1 2023-12-25 16:47:35
by f3dexpress Nico
freeter
帖子
1
精華
0
積分
12
回復于:2023-12-25 22:08:06 1 樓

??????

引用

回復加入討論

回復
請選擇移動至版塊:
確認移動
主站蜘蛛池模板: 国产黄频免费高清视频 | 亚洲欧洲国产精品香蕉网 | 国产欧美日韩在线播放 | 天天操夜夜操夜夜操 | 午夜老司机av | 韩剧《上流社会》在线观看 | 久久婷婷无码欧美日韩 | 草久在线 | 国产XXX69麻豆国语对白 | 亚洲天堂xxxx | 欧美日韩在线观看视频网站 | 国产日本一级二级三级 | 美女视频黄的免费的 | 国产videossex精品 | 日日草影院 | 国产亚洲精品美女久久 | 国产视频一区二区在线观看 | 亚洲欧美激情小说另类 | 精品国内自产拍在线播放观看 | 亚洲视频在线播放免费 | 日韩欧美三级在线 | 麻豆精品偷拍人妻在线网址 | 激情射精爆插热吻无码视频 | 在线观看免费中文字幕 | 国产日产人妻精品精品 | 久久久无码精品亚洲日韩蜜桃 | 色香欲天天影视综合网 | 草莓香蕉樱桃黄瓜视频 | 涩涩资源中文字幕久久婷婷爱 | 欧美精品综合A片在线观看 免费女人高潮流视频在线观看 | 亚洲精品午夜视频 | 好紧好爽午夜视频 | 美女视频无遮挡永久网站 | 成人免费无码A片免费看软件 | 婷婷五月六月激情综合色中文字幕 | 成年女人片免费看 | A∨变态另类天堂无码专区 91成人入口 | 国产传媒毛片精品视频第一次 | 比较有韵味的熟妇无码 | 亚洲精品又粗又大又爽a片 色八网站首页 | 日韩经典视频在线观看 |