예제 #1
0
        private void btnDelete_Click(object sender, EventArgs e)
        {
            #region No ListItem Selected

            if (gridPlayingBoard.SelectedRows.Count == 0)
            {
                DataValidationMesaage.NoSelectedItemFromList(gridPlayingBoard.Text);

                return;
            }


            #endregion

            DataBaseDataContext myConnection = Setting.DataBase;

            #region PlayingBoard Cast

            int playingBoardId = (int)gridPlayingBoard.SelectedRows[0].Cells[1].Value;

            if (!PlayingBoard.Validation(playingBoardId, myConnection))
            {
                DataValidationMesaage.NoDataInBank();

                return;
            }

            PlayingBoard playingBoard = PlayingBoard.Get(playingBoardId, myConnection);

            #endregion

            #region Check Data In Use (RaspberryPin)

            if (playingBoard.PlayingBoardTypes.Any() ||
                myConnection.RaspBerryPlayingBoards.Any(a => a.PlayingBoard.Equals(playingBoard)))
            {
                DataValidationMesaage.DataInUse(playingBoard.Number, gridPlayingBoard.Text);

                return;
            }


            #endregion

            DialogResult message = DataValidationMesaage.ConfirmDeleteData(playingBoard.Number);

            if (message == DialogResult.Yes)
            {
                PlayingBoard.Delete(playingBoard, myConnection);

                DataValidationMesaage.DeleteMessage();

                PlayingBoard.LoadGridColorful_By_PlayingBoardTitle(gridPlayingBoard, playingBoard.PlayingBoardTitle,
                                                                   myConnection);
            }

            myConnection.Dispose();
        }