日本美女a级片_不卡免费视频_麻豆精品一区综合av在线_91国在线产_国产精品二三区_人妻av一区二区三区精品

技術(shù)支持 / 技術(shù)論壇 / 二次開發(fā) / 【技術(shù)分享】【C#】NX樹列表節(jié)點的多類型數(shù)據(jù)關(guān)聯(lián)管理
【技術(shù)分享】【C#】NX樹列表節(jié)點的多類型數(shù)據(jù)關(guān)聯(lián)管理
帖子
14
精華
1
積分
154
二次開發(fā) 技術(shù)分享

        在NX二次開發(fā)中,通常樹列表節(jié)點不僅僅作為顯示內(nèi)容的載體,在程序中內(nèi),節(jié)點(Node)往往對應(yīng)著各類的數(shù)據(jù),對樹列表節(jié)點的值修改,需要同步對數(shù)據(jù)值的修改。

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

using System.Collections.Generic;
using System.Linq;
using NXOpen.BlockStyler;
namespace F3D.DF.InfManagement.BatchColoringOfHoles
{
    internal class ToolNodeData
    {
        /// <summary>
        /// 行綁定數(shù)據(jù)
        /// </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>
        /// 數(shù)據(jù)
        /// </summary>
        internal object Data { get; set; }
    }

    internal class NodeDataManage : List<ToolNodeData>
    {
        /// <summary>
        /// 檢索數(shù)據(jù)
        /// </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>
        /// 移除某個數(shù)據(jù)
        /// </summary>
        /// <param name="nodeDataTypes"></param>
        internal void RemoveNodeData(Node node)
        {
            this.Remove(this.FirstOrDefault(obj => obj.Node.Tag == node.Tag));
         
        }
        /// <summary>
        /// 移除某個類型的數(shù)據(jù)
        /// </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> /// 行綁定數(shù)據(jù) /// </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 { //修改零件名稱預(yù)設(shè) PartName, //修改預(yù)設(shè)備注 Remarks, } /// <summary> /// 行 /// </summary> internal Node Node { get; set; } /// <summary> /// 數(shù)據(jù) /// </summary> internal object Data { get; set; } }


使用方法,先new

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

數(shù)據(jù)添加

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

數(shù)據(jù)檢索

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

通過節(jié)點刪除數(shù)據(jù)

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

??????

引用

回復(fù)加入討論

回復(fù)
請選擇移動至版塊:
確認(rèn)移動
主站蜘蛛池模板: 日韩一区二区三区在线看 | 97午夜理论片在线影院 | 97人人人人 | 一级做a爱片性色毛片高清 精品国产www | www.一区二区 | 一区二区三区视频在线免费观看 | 中文字幕日韩视频 | 毛片免费视频肛交颜射免费视频 | 久久久天堂国产精品女人 | 中文字幕视频在线免费观看 | 欧美精品无码久久久潘金莲 | 久久久久国产成人免费精品免费 | 精品久久久久久久久久久 | 国产精品久久久久乳精品爆 | 国产成人欧美日本在线观看 | 黄色美女一级 | 国产v日韩v欧美v在线观看 | 2021国产精品无码专区 | 777色淫网站女女免费 | 日日狠狠久久8888偷偷色 | 久久久精品日本一区二区三区 | 精品久久久久久久久久久久久 | www久久九 | 日韩精品中文字幕一区 | 欧美性大交 | 国产处女影院 | 国产农村妇女高潮大叫 | 999精品国产 | 国产日韩欧美三级 | 国产精品7777777 | 日本福利一区 | 色综合热 | 免费一级毛片在线播放视频老 | 国产一级黄国产综合在线观看 | 黄色在线免费观看 | 亚洲一区二区免费视频 | 在线观看国产二区 | 国产一区二 | 国产精品久久中文字幕 | 97超碰伊人中文字幕 | 亚洲在线视频免费 |