)
We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. (Last updated on: June 24, 2019).
Unfortunately, activation email could not send to your email. Please try again.
Syncfusion Feedback

How to copy and paste the multiple cell in the WinForms GridControl by using ContextMenuStrip?

Platform: WinForms |
Control: GridControl |
Published Date: April 14, 2015 |
Last Revised Date: December 19, 2019

Copy and paste the multiple cell

To copy and paste the cell value in a GridControl by using a ContextMenuStrip, you can use Copy() and Paste() method of the Grid.Model.CopyPaste class to copy the selected cell and paste the selected cell in desired cell location.

While right clicking on the selected range of cells to show the context menu, the selection is cleared. To avoid clearing of selection, mask the left button by setting   SelectCellsMouseButtonsMask to MouseButtons.Left.

C#

//Prevent the clearing of selection while right clicking on it. this.gridControl1.SelectCellsMouseButtonsMask = System.Windows.Forms.MouseButtons.Left;
//Set context menu for grid
this.gridControl1.ContextMenuStrip = this.contextMenuStrip1;
this.gridControl2.ContextMenuStrip = this.contextMenuStrip1;
//Add context menu items
this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.copyToolStripMenuItem,
this.pasteToolStripMenuItem});
//Hook the event to copy/paste the cell values of the grid
pasteToolStripMenuItem.Click += new System.EventHandler(pasteToolStripMenuItem_Click);
copyToolStripMenuItem.Click += new System.EventHandler(copyToolStripMenuItem_Click);
private void copyToolStripMenuItem_Click(object sender, EventArgs e)
{
  //Copy the selected range of cells
  this.gridControl1.Model.CutPaste.Copy();
}
private void pasteToolStripMenuItem_Click(object sender, EventArgs e)
{
  //Paste the content in the grid
  this.gridControl2.Model.CutPaste.Paste();
}

VB

'Prevent the clearing of selection while right clicking on it.
Me.gridControl1.SelectCellsMouseButtonsMask = System.Windows.Forms.MouseButtons.Left
'Set context menu for grid
Me.gridControl1.ContextMenuStrip = Me.contextMenuStrip1
Me.gridControl2.ContextMenuStrip = Me.contextMenuStrip1
'Add context menu items
Me.contextMenuStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() { Me.copyToolStripMenuItem, Me.pasteToolStripMenuItem})
'Hook the event to copy/paste the cell values of the grid
AddHandler pasteToolStripMenuItem.Click, AddressOf pasteToolStripMenuItem_Click
AddHandler copyToolStripMenuItem.Click, AddressOf copyToolStripMenuItem_Click
private void copyToolStripMenuItem_Click(Object sender, EventArgs e)
  'Copy the selected range of cells
  Me.gridControl1.Model.CutPaste.Copy()
End Sub
private void pasteToolStripMenuItem_Click(Object sender, EventArgs e)
  'Paste the content in the grid
  Me.gridControl2.Model.CutPaste.Paste()
End Sub

The following image displays the context menu to copy and paste content of the GridControl.

Context menu to copy and paste content of the gridcontrol

Figure 1: Context menu to copy and paste content of the Gridcontrol

Samples:

C#: CopyPasteUsingContextMenu

VB: CopyPasteUsingContextMenu

2X faster development

The ultimate WinForms UI toolkit to boost your development speed.
ADD COMMENT
You must log in to leave a comment

Please sign in to access our KB

This page will automatically be redirected to the sign-in page in 10 seconds.

Up arrow icon

Warning Icon You are using an outdated version of Internet Explorer that may not display all features of this and other websites. Upgrade to Internet Explorer 8 or newer for a better experience.Close Icon

Live Chat Icon For mobile
Live Chat Icon