Exemplo n.º 1
0
 protected void OnAfterItemEdit(JetItemEditEventArgs args)
 {
     if (AfterItemEdit != null)
     {
         AfterItemEdit(this, args);
     }
 }
Exemplo n.º 2
0
 protected void OnBeforeItemEdit(JetItemEditEventArgs args)
 {
     if (BeforeItemEdit != null)
     {
         BeforeItemEdit(this, args);
     }
 }
Exemplo n.º 3
0
        public void CloseEdit(bool save)
        {
            if (_inPlaceEditBox.Visible && !_closingInPlaceEdit)
            {
                _closingInPlaceEdit = true;
                if (_inPlaceEditBox.Text != _startEditText)
                {
                    JetItemEditEventArgs args = new JetItemEditEventArgs(save ? _inPlaceEditBox.Text : null,
                                                                         _editNode.Data, _editColumn);
                    OnAfterItemEdit(args);
                }

                _host.SetEditedNode(null);
                _inPlaceEditBox.Visible = false;
                _host.Focus();
                _closingInPlaceEdit = false;
            }
        }
Exemplo n.º 4
0
        public void BeginEdit(JetListView jetListView, JetListViewColumn col, JetListViewNode node)
        {
            _host       = jetListView;
            _editColumn = col;
            _editNode   = node;

            if (!jetListView.Controls.Contains(_inPlaceEditBox))
            {
                jetListView.Controls.Add(_inPlaceEditBox);
            }

            Rectangle rc = jetListView.GetItemBounds(node, col);

            if (col.SizeToContent)
            {
                rc.Width = jetListView.InternalClientRect().Width - rc.Left;
            }
            JetItemEditEventArgs args = new JetItemEditEventArgs(col.GetItemText(node.Data, rc.Width),
                                                                 node.Data, col);

            OnBeforeItemEdit(args);
            if (args.CancelEdit)
            {
                return;
            }

            jetListView.ScrollInView(node);
            jetListView.SetEditedNode(node);

            _inPlaceEditRect       = new Rectangle(rc.Left - 2, rc.Top - 1, rc.Width + 4, rc.Height + 2);
            _inPlaceEditBox.Bounds = _inPlaceEditRect;
            _inPlaceEditBox.Text   = args.Text;
            _startEditText         = args.Text;
            AutosizeInPlaceEdit();
            _inPlaceEditBox.Visible = true;
            _inPlaceEditBox.Focus();
        }