public void OnPaste() { var activeControl = SplitContainer.ActiveControl; if (activeControl is DataGridView) { var currentGridView = (DataGridView)activeControl; var currentCell = currentGridView.CurrentCell; var currentColumn = currentCell.OwningColumn; var text = Clipboard.GetText(); if (currentColumn == dgcName) { if (Document.Queries[text] != null) { MessageBox.Show(_package.GetResourceString(121), _package.GetResourceString(110), MessageBoxButtons.OK, MessageBoxIcon.Error); return; } } currentCell.Value = text; dgQueries_CellEndEdit(null, new DataGridViewCellEventArgs(currentCell.ColumnIndex, currentCell.RowIndex)); return; } if (activeControl is TextBoxBase) { ((TextBoxBase)activeControl).Paste(); return; } throw new NotImplementedException(); }
public override int CreateEditorInstance(uint createDocFlags, string moniker, string physicalView, IVsHierarchy pHier, uint itemid, IntPtr existingDocData, out IntPtr docView, out IntPtr docData, out string editorCaption, out Guid cmdUI, out int cancelled) { docView = IntPtr.Zero; docData = IntPtr.Zero; editorCaption = null; cmdUI = GuidList.XinqEditorFactoryGuid; cancelled = 1; if ((createDocFlags & (VSConstants.CEF_OPENFILE | VSConstants.CEF_SILENT)) == 0) { return(VSConstants.E_INVALIDARG); } // Prompt user to close the currently open editor if (existingDocData != IntPtr.Zero) { return(VSConstants.VS_E_INCOMPATIBLEDOCDATA); } var editor = new XinqEditorPane(_package); docView = Marshal.GetIUnknownForObject(editor); docData = Marshal.GetIUnknownForObject(editor); editorCaption = _package.GetResourceString(113); cancelled = 0; return(VSConstants.S_OK); }