상속: IVisualPart
 public void OnGenePentagonContacted(Rect position, VisualGene.GeneDirection direction)
 {
     if (GenePentagonContactDown != null)
     {
         GenePentagonContactDown(position, direction);
     }
 }
        private void MoveAndShowGeneInfoMenu(Rect boundingRect, VisualGene.GeneDirection direction)
        {
            _GeneElementMenu.SetValue(Canvas.LeftProperty, boundingRect.Left - 20); // I don't know why 20 works, but
            _GeneElementMenu.SetValue(Canvas.TopProperty, boundingRect.Top - 20);   // based on experimentation it positions the
                                                                                    // menu correctly

            // Set orientation so gene menu fits within chromosomebar
            if (direction == VisualGene.GeneDirection.Forward)
            {
                _GeneElementMenu.Orientation = -180;
            }
            else
            {
                _GeneElementMenu.Orientation = 0;
            }

            _GeneElementMenu.Visibility = Visibility.Visible;
        }
 public void GenePentagonContacted(Rect position, VisualGene.GeneDirection direction)
 {
     _surfaceWindowVM.OnGenePentagonContacted(position, direction);
 }