Ejemplo n.º 1
0
        public override void Undo(object p_args)
        {
            MoveRptItemArgs args    = (MoveRptItemArgs)p_args;
            RptItem         drgItem = args.RptItem;

            drgItem.Row = args.OldRow;
            drgItem.Col = args.OldCol;
            drgItem.Update(true);
        }
Ejemplo n.º 2
0
        public override object Execute(object p_args)
        {
            MoveRptItemArgs args    = (MoveRptItemArgs)p_args;
            RptItem         drgItem = args.RptItem;
            CellEventArgs   dstPos  = args.DstPos;

            args.OldRow = drgItem.Row;
            args.OldCol = drgItem.Col;
            drgItem.Row = dstPos.Row;
            drgItem.Col = dstPos.Column;
            drgItem.Update(true);
            return(drgItem);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 拖放结束
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void OnItemDropped(object sender, CellEventArgs e)
        {
            if (_drgItem == null)
            {
                _owner.Excel.DecorationRange = null;
                return;
            }

            if (_drgItem.TestMovIntersect(e.Row, e.Column))
            {
                Kit.Warn("此对象移动后的位置后会与其他对象重叠,请先移动可能重叠的对象后重试。");
                _drgItem = null;
                return;
            }

            MoveRptItemArgs moveAgs = new MoveRptItemArgs(_drgItem, e);

            _owner.Info.ExecuteCmd(RptCmds.MoveRptItemCmd, moveAgs);
            _drgItem = null;
        }