protected virtual void Chart_ObjectSelected(object sender, HotTrackEventArgs e)
 {
     if (e.Object is Series)
     {
         e.Cancel = !SeriesSelection;
         if (SeriesSelection)
         {
             this.seriesSelected = (Series)e.Object;
             this.pointSelected  = e.AdditionalObject as SeriesPoint;
         }
     }
     else
     {
         if (AllowSelectAnotherObject(e.Object))
         {
             this.selectedAnotherObject = e.Object;
             e.Cancel = false;
         }
         else
         {
             this.selectedAnotherObject = null;
             e.Cancel = true;
             ChartControl.ClearSelection(false);
         }
         if (SeriesSelection)
         {
             this.seriesSelected = null;
             this.pointSelected  = null;
         }
     }
     UpdateControls();
 }