Revit.SDK.Samples.NewHostedSweep.CS.EdgeFetchForm.UpdateNodeCheckStatus C# (CSharp) Method

UpdateNodeCheckStatus() private method

Update tree node check status, it will impact its children and parents' status.
private UpdateNodeCheckStatus ( TreeNode node, CheckState state ) : void
node System.Windows.Forms.TreeNode Tree node to update
state CheckState CheckState value
return void
        private void UpdateNodeCheckStatus(TreeNode node, CheckState state)
        {
            node.StateImageIndex = (int)state;
            if(node.Tag != null && node.Tag is Edge && m_activeElem != null)
            {
                Edge edge = node.Tag as Edge;
                Autodesk.Revit.DB.Element elem = node.Parent.Tag as Autodesk.Revit.DB.Element;
                ElementGeometry elemGeom = m_creationData.Creator.ElemGeomDic[elem];
                elemGeom.EdgeBindingDic[edge].IsSelected =
                    (node.StateImageIndex == (int)CheckState.Checked);
            }
            UpdateChildren(node);
            UpdateParent(node);
        }