Example #1
0
 protected override void OnSelected(SelectedEventArgs args)
 {
     if (args.Mouse == Mouse.LeftDown || args.Mouse == Mouse.RightDown || args.Mouse == Mouse.RightUp)
     {
         return;
     }
     if (view.Side == Situation.Side)
     {
         base.OnSelected(args);
     }
 }
        /// <summary>
        /// 当选中棋子或选中棋盘中某个位置时执行
        /// </summary>
        /// <param name="args"></param>
        protected virtual void OnSelected(SelectedEventArgs args)
        {
            //if (args.Mouse == Mouse.LeftDown || args.Mouse == Mouse.RightDown || args.Mouse == Mouse.RightUp)
            //{
            //    return false;
            //}
            //return true;

            //if (!this.OnSelected(args))
            //{
            //    return;
            //}

            Console.WriteLine("selected pos:" + args.Position);
            if (args.Position == 256)
            {
                return;
            }
            if (currPiece == null && args.Chess == null)
            {
                return;
            }
            if (args.Chess != null && args.Chess.Side == this.Situation.Side)
            {
                //args.Chess.IsMark = true;
                this.Chessboard.Mark(args.Chess, true);
                if (currPiece != null && currPiece != args.Chess)
                {
                    //prePicec.IsMark = false;
                    this.Chessboard.Mark(currPiece, false);
                }
                currPiece = args.Chess;
            }
            else
            {
                //if(args.Chess != null)吃子
                if (currPiece != null)
                {
                    //prePicec.IsMark = false;
                    //currPiece = null;
                    if (this.Move(currPiece, args.Position))
                    {
                        currPiece = null;
                    }
                }
            }
        }
Example #3
0
 private void FireSelected(System.Windows.Input.MouseButtonEventArgs e)
 {
     if (this.Selected != null)
     {
         Mouse mouse = Mouse.LeftUp;
         if (e.ChangedButton == System.Windows.Input.MouseButton.Right && e.ButtonState == System.Windows.Input.MouseButtonState.Pressed)
         {
             mouse = Mouse.RightDown;
         }else if (e.ChangedButton == System.Windows.Input.MouseButton.Right && e.ButtonState == System.Windows.Input.MouseButtonState.Released)
         {
             mouse = Mouse.RightUp;
         }else if (e.ChangedButton == System.Windows.Input.MouseButton.Left && e.ButtonState == System.Windows.Input.MouseButtonState.Pressed)
         {
             mouse = Mouse.LeftDown;
         }
         SelectedEventArgs args = new SelectedEventArgs(256, mouse, e.ClickCount, e.MouseDevice.GetPosition(this).X, e.MouseDevice.GetPosition(this).Y, this.Piece);
         this.Selected(this, args);
     }
 }