public override void Dispose()
 {
     if (handler != null)
     {
         handler.RemoveView(this);
         mapping.Clear();
         handler = null;
         base.Dispose();
     }
 }