示例#1
0
 private void method_2(IRelationshipClass irelationshipClass_0, IObject iobject_0, TreeNode treeNode_0,
                       bool bool_3)
 {
     try
     {
         IObjectClass destinationClass;
         if (bool_3)
         {
             destinationClass = irelationshipClass_0.DestinationClass;
         }
         else
         {
             destinationClass = irelationshipClass_0.OriginClass;
         }
         TreeNode node = new TreeNode(destinationClass.AliasName)
         {
             Tag = destinationClass
         };
         IEnumRelationship relationshipsForObject = irelationshipClass_0.GetRelationshipsForObject(iobject_0);
         relationshipsForObject.Reset();
         for (IRelationship relationship2 = relationshipsForObject.Next();
              relationship2 != null;
              relationship2 = relationshipsForObject.Next())
         {
             if (relationship2.DestinationObject != null)
             {
                 TreeNode node2 = new TreeNode(relationship2.DestinationObject.OID.ToString())
                 {
                     Tag = relationship2.DestinationObject
                 };
                 node.Nodes.Add(node2);
             }
         }
         if (node.Nodes.Count > 0)
         {
             treeNode_0.Nodes.Add(node);
         }
     }
     catch
     {
     }
 }
示例#2
0
        private void method_3(IFeature ifeature_2, TreeNode treeNode_0)
        {
            IObjectClass           destinationClass;
            TreeNode               node;
            IEnumRelationship      relationshipsForObject;
            IRelationship          relationship2;
            TreeNode               node2;
            IEnumRelationshipClass class2 = ifeature_2.Class.get_RelationshipClasses(esriRelRole.esriRelRoleOrigin);

            class2.Reset();
            IRelationshipClass class3 = class2.Next();

            while (true)
            {
                if (class3 == null)
                {
                    break;
                }
                try
                {
                    destinationClass = class3.DestinationClass;
                    node             = new TreeNode(destinationClass.AliasName)
                    {
                        Tag = destinationClass
                    };
                    relationshipsForObject = class3.GetRelationshipsForObject(ifeature_2);
                    relationshipsForObject.Reset();
                    relationship2 = relationshipsForObject.Next();
                    while (relationship2 != null)
                    {
                        if (relationship2.DestinationObject != null)
                        {
                            node2 = new TreeNode(relationship2.DestinationObject.OID.ToString())
                            {
                                Tag = relationship2.DestinationObject
                            };
                            node.Nodes.Add(node2);
                        }
                        relationship2 = relationshipsForObject.Next();
                    }
                    if (node.Nodes.Count > 0)
                    {
                        treeNode_0.Nodes.Add(node);
                    }
                }
                catch
                {
                }
                class3 = class2.Next();
            }
            class2 = ifeature_2.Class.get_RelationshipClasses(esriRelRole.esriRelRoleDestination);
            class2.Reset();
            for (class3 = class2.Next(); class3 != null; class3 = class2.Next())
            {
                destinationClass = class3.OriginClass;
                node             = new TreeNode(destinationClass.AliasName)
                {
                    Tag = destinationClass
                };
                relationshipsForObject = class3.GetRelationshipsForObject(ifeature_2);
                relationshipsForObject.Reset();
                for (relationship2 = relationshipsForObject.Next();
                     relationship2 != null;
                     relationship2 = relationshipsForObject.Next())
                {
                    if (relationship2.OriginObject != null)
                    {
                        node2 = new TreeNode(relationship2.OriginObject.OID.ToString())
                        {
                            Tag = relationship2.OriginObject
                        };
                        node.Nodes.Add(node2);
                    }
                }
                if (node.Nodes.Count > 0)
                {
                    treeNode_0.Nodes.Add(node);
                }
            }
        }