Example #1
0
        private void deleteRowToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (tcMain.SelectedTabPageIndex == -1 || tcMain.SelectedTabPage == null)
            {
                StaticReference.ShowWarning(this, LanguageManager.Get("Message_NoFileOpen"));
                return;
            }
            string fileName = tcMain.SelectedTabPage.Tag as string;

            var      tbl  = StaticReference.GetTableByFullName(fileName);
            GridView view = GetViewFromSelectedTabPage();

            if (view == null || tbl == null)
            {
                StaticReference.ShowWarning(this, LanguageManager.Get("Message_SelectPageFirst"));
                return;
            }

            if (view.SelectedRowsCount == 0)
            {
                StaticReference.ShowWarning(this, LanguageManager.Get("Message_NoRowsSelected"));
                return;
            }
            if (StaticReference.ShowQuestion(this, string.Format(LanguageManager.Get("Message_DeleteConfirm"), view.SelectedRowsCount)) == DialogResult.Yes)
            {
                List <DataRow> selectedRows = new List <DataRow>();

                for (int i = 0; i < view.SelectedRowsCount; i++)
                {
                    selectedRows.Add(tbl.Table.Rows[view.GetSelectedRows()[i]]);
                }

                if (_editedCells.ContainsKey(view))
                {
                    foreach (var q in view.GetSelectedRows())
                    {
                        _editedCells[view].RemoveAll(i => i.Key == q);
                    }
                    view.Invalidate();
                }
                foreach (var t in selectedRows)
                {
                    tbl.Table.Rows.Remove(t);
                    RemoveNewRowHighlight(view, t);
                }
                view.ClearSelection();
                StaticReference.ShowInformation(this, string.Format(LanguageManager.Get("Message_DeleteSuccess"), selectedRows.Count));
            }
        }
Example #2
0
        private bool CloseFile(string tableName)
        {
            var tbl = StaticReference.GetTableByFullName(tableName);

            if (tbl == null)
            {
                return(true);
            }

            if (tbl.Altered)
            {
                string q = string.Format(LanguageManager.Get("Message_SaveConfirmChanges"), tableName);

                switch (StaticReference.ShowQuestion(this, q))
                {
                case DialogResult.Yes:
                    tbl.Save();     // save
                    break;

                case DialogResult.Cancel:
                    return(false);
                }
            }

            try
            {
                /* Clear edited cell value if exist */
                var page = GetTabPageByFilename(tableName);
                var view = GetViewFromTabPage(page);
                if (_editedCells.ContainsKey(view))
                {
                    _editedCells.Remove(view);
                    view.Invalidate();
                }
                ClearNewRowHighlight(view);
                StaticReference.RemoveTableByFullName(tableName);
            }
            catch
            {
                // ignored
            }

            return(true);
        }