protected void OnUserCommandChanged(object sender, UserCommandEventArgs e)
        {
            this.OnPreCrudOperation(e);

            if (!e.Cancel)
            {
                switch (e.UserCommand)
                {
                    case UserCommandType.Insert:
                    case UserCommandType.Update:
                        ErrorMessages em = this.OnCustomValidation();
                        if (em == null || em.IsEmpty())
                            e.Succeed = base.Card.SaveChanges();
                        break;
                    case UserCommandType.Delete:
                        e.Succeed = base.Card.Delete();
                        break;
                    case UserCommandType.Clear:
                        this.Clear();
                        break;
                }

                this.OnCrudOperationComplete(e);
            }

            EventHandler<UserCommandEventArgs> handler = this.CrudOperationComplete;
            if (handler != null)
            {
                handler(this, e);
            }
        }
 protected void OnUpdate(object sender, EventArgs e)
 {
     UserCommandEventArgs ec = new UserCommandEventArgs(UserCommandType.Update);
     this.OnCommandChanged(ec);
     if (ec.Succeed)
     {
         if (this.AutoWriteCloseScript)
             Javascript.WriteDynamicClosePage(base.Page, "CloseCommandBar");
         else if (this.AutoBackToSender)
             this.BackToSender();
         else
             this.SetMode(false);
     }
 }
 private void OnCommandChanged(UserCommandEventArgs e)
 {
     EventHandler<UserCommandEventArgs> handler = (EventHandler<UserCommandEventArgs>)base.Events[CommandChangedEvent];
     if (handler != null)
         handler(this, e);
 }
 protected virtual void OnCrudOperationComplete(UserCommandEventArgs e)
 {
     EventHandler<UserCommandEventArgs> handler = this.PreCrudOperation;
     if (handler != null)
         handler(this, e);
 }