public override void NodeDoubleClicked(ITreeNode node) { var moleculeBuilder = node.TagAsObject as IMoleculeBuilder; if (moleculeBuilder == null) { base.NodeDoubleClicked(node); return; } var moleculeBuildingBlock = node.ParentNode.TagAsObject.DowncastTo <IMoleculeBuildingBlock>(); _editBuildingBlockStarter.EditMolecule(moleculeBuildingBlock, moleculeBuilder); }