Beispiel #1
0
        private void TableView_CellActivated(TableView.CellActivatedEventArgs obj)
        {
            var val = obj.Table.Rows[obj.Row][obj.Col];

            if (val != null && val != DBNull.Value)
            {
                Activator.Show(val.ToString());
            }
        }
Beispiel #2
0
        private void EditCurrentCell(TableView.CellActivatedEventArgs e)
        {
            if (e.Table == null)
            {
                return;
            }
            var o = e.Table.Rows [e.Row] [e.Col];

            var title = o is uint u?GetUnicodeCategory(u) + $"(0x{o:X4})" : "Enter new value";

            var  oldValue  = e.Table.Rows[e.Row][e.Col].ToString();
            bool okPressed = false;

            var ok = new Button("Ok", is_default: true);

            ok.Clicked += () => { okPressed = true; Application.RequestStop(); };
            var cancel = new Button("Cancel");

            cancel.Clicked += () => { Application.RequestStop(); };
            var d = new Dialog(title, 60, 20, ok, cancel);

            var lbl = new Label()
            {
                X    = 0,
                Y    = 1,
                Text = e.Table.Columns[e.Col].ColumnName
            };

            var tf = new TextField()
            {
                Text  = oldValue,
                X     = 0,
                Y     = 2,
                Width = Dim.Fill()
            };

            d.Add(lbl, tf);
            tf.SetFocus();

            Application.Run(d);

            if (okPressed)
            {
                try {
                    e.Table.Rows[e.Row][e.Col] = string.IsNullOrWhiteSpace(tf.Text.ToString()) ? DBNull.Value : (object)tf.Text;
                }
                catch (Exception ex) {
                    MessageBox.ErrorQuery(60, 20, "Failed to set text", ex.Message, "Ok");
                }

                tableView.Update();
            }
        }
Beispiel #3
0
        private void EditCurrentCell(TableView.CellActivatedEventArgs e)
        {
            if (e.Table == null)
            {
                return;
            }

            var oldValue = e.Table.Rows [e.Row] [e.Col].ToString();

            if (GetText("Enter new value", e.Table.Columns [e.Col].ColumnName, oldValue, out string newText))
            {
                try {
                    e.Table.Rows [e.Row] [e.Col] = string.IsNullOrWhiteSpace(newText) ? DBNull.Value : (object)newText;
                } catch (Exception ex) {
                    MessageBox.ErrorQuery(60, 20, "Failed to set text", ex.Message, "Ok");
                }

                tableView.Update();
            }
        }